一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

小型文件系統(tǒng)如何選擇?FatFs和LittleFs優(yōu)缺點比較

jf_94171069 ? 來源:jf_94171069 ? 作者:jf_94171069 ? 2024-09-29 16:14 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

01

概述

文件系統(tǒng)在嵌入式系統(tǒng)中的作用不可或缺,它提供了對非易失性存儲設(shè)備(如閃存、SD卡等)上的數(shù)據(jù)進行有效組織和管理的能力。通過文件系統(tǒng),嵌入式系統(tǒng)可以像在傳統(tǒng)計算機上一樣創(chuàng)建、讀取、寫入和刪除文件,實現(xiàn)了數(shù)據(jù)的持久化存儲和分層次的目錄結(jié)構(gòu)。文件系統(tǒng)的存在極大地簡化了數(shù)據(jù)管理任務(wù),提升了系統(tǒng)整體的穩(wěn)定性和便利性,對于系統(tǒng)配置、數(shù)據(jù)記錄、固件升級等多種應(yīng)用場景來說至關(guān)重要。

FatFS 是一個流行的開源、輕量級、通用型的FAT文件系統(tǒng)模塊,專為小型嵌入式系統(tǒng)設(shè)計,兼容FAT12、FAT16和FAT32格式。它能夠在多種類型的存儲介質(zhì)上實現(xiàn)文件系統(tǒng)的掛載和操作,常用于消費電子產(chǎn)品、工業(yè)控制設(shè)備以及其他資源有限的嵌入式環(huán)境中,特別是需要與個人電腦或其他設(shè)備之間進行數(shù)據(jù)交換的應(yīng)用場景。

LittleFS 則是一個專門為資源有限且不穩(wěn)定環(huán)境設(shè)計的嵌入式文件系統(tǒng),相較于傳統(tǒng)的FAT文件系統(tǒng),LittleFS專注于在小容量存儲設(shè)備(如SPI Flash、EEPROM等)上提供更好的耐久性和容錯能力。LittleFS主要解決嵌入式系統(tǒng)中因電源突然斷電或者硬件故障導致的數(shù)據(jù)丟失問題,它通過元數(shù)據(jù)的日志記錄和恢復機制確保文件系統(tǒng)的完整性。這種文件系統(tǒng)在物聯(lián)網(wǎng)(IoT)設(shè)備、智能傳感器節(jié)點和其它長期運行、無人值守的嵌入式系統(tǒng)中有著廣闊的應(yīng)用前景。

02

文件系統(tǒng)FatFS

FatFs是一個通用的文件系統(tǒng)(FAT/exFAT)模塊,用于在小型嵌入式系統(tǒng)中實現(xiàn)FAT文件系統(tǒng)。

官方網(wǎng)址:

http://elm-chan.org/fsw/ff/00index_e.html

FatFs組件的編寫遵循ANSI C(C89),完全分離于磁盤 I/O 層,因此不依賴于硬件平臺。它可以嵌入到資源有限的微控制器中,如 8051, PIC, AVR, ARM, Z80, RX等等,不需要做任何修改。

特征

a.兼容性強:DOS/ Windows兼容的FAT/exFAT文件系統(tǒng)。

b.資源消耗低:代碼體積小巧,對RAM和ROM資源需求較少,平臺無關(guān),容易移植。

c.移植性好:幾乎可以運行在任何帶有文件系統(tǒng)功能的嵌入式系統(tǒng)上。

d.支持以下各種配置選項:

ANSI / OEM或Unicode中的長文件名。

exFAT文件系統(tǒng),64位LBA和GPT可存儲大量數(shù)據(jù)。

RTOS的線程安全。

多個卷(物理驅(qū)動器和分區(qū))。

可變扇區(qū)大小。

多個代碼頁,包括DBCS。

只讀,可選API,I / O緩沖區(qū)等...

03

文件系統(tǒng)Littlefs

市場上有許多商業(yè)和開源嵌入式文件系統(tǒng),但沒有一個能夠完全滿足我們的設(shè)計代碼大小、功能或可靠性要求,而這些對于成功部署 IoT 設(shè)備至關(guān)重要。LittleFs是一款專為嵌入式系統(tǒng)設(shè)計的小型故障安全文件系統(tǒng)。

源碼地址:

https://github.com/armmbed/mbed-littlefs

Littlefs特點:

wKgaomb5DGSAF-VfAAC7k0BnFXQ574.jpg

占用資源?。篖ittleFS針對小容量存儲如SPI Flash進行了優(yōu)化,支持小至幾KB的存儲空間。

斷電恢復能力:LittleFS通過日志記錄和恢復機制,減少了文件系統(tǒng)損壞的可能性,尤其在突然斷電情況下,能夠保持數(shù)據(jù)完整性。

平均磨損:LittleFS在寫入操作上進行了優(yōu)化,減少因小文件寫入引起的磨損均衡問題。

文件系統(tǒng)對比

每一種產(chǎn)物都有它存在的價值,文件系統(tǒng)也同樣如此,各有各的優(yōu)缺點,下面簡單羅列幾點它們的區(qū)別。

1.資源RAM / ROM大小

Littlefs是Mbed OS中的高完整性嵌入式文件系統(tǒng),經(jīng)過優(yōu)化可與RAM和ROM有限的MCU一起使用。

Littlefs高度集成的嵌入式文件系統(tǒng)使用比FAT少的13K ROM和少于4K的RAM。

wKgZomb5DGiAEt-kAAAgb7aCYuQ672.jpg

2.失電恢復能力

littlefs具有強大的copy-on-write保證,并且磁盤上的存儲總是保持有效狀態(tài),可能有隨機電源故障的系統(tǒng)適合該文件系統(tǒng)。

wKgaomb5DGmAGlpjAH5fQ0Um_PM637.jpg

wKgZomb5DGqAQXzbAI0oVdOpN9Y213.jpg

3.磨損均衡

嵌入式設(shè)備使用的大多數(shù)存儲芯片都支持每個扇區(qū)有限的擦除集,如果沒有均衡,則嵌入式設(shè)備的壽命可能會受到影響

wKgaomb5DGyARRZlAEB-joplU3k543.jpg

04

結(jié)論

FatFs,如果存儲設(shè)備,例如SD卡,需要接入windows中查看存儲的內(nèi)容,需要選擇FatFs。

LittleFs,如果需要更小的資源占用,磨損平衡,掉電保護功能,需要選擇LittleFs。

本文章源自奇跡物聯(lián)開源的物聯(lián)網(wǎng)應(yīng)用知識庫Cellular IoT Wiki,更多技術(shù)干貨歡迎關(guān)注收藏Wiki:Cellular IoT Wiki 知識庫(https://rckrv97mzx.feishu.cn/wiki/wikcnBvAC9WOkEYG5CLqGwm6PHf)

歡迎同學們走進AmazIOT知識庫的世界!

這里是為物聯(lián)網(wǎng)人構(gòu)建的技術(shù)應(yīng)用百科,以便幫助你更快更簡單的開發(fā)物聯(lián)網(wǎng)產(chǎn)品。

Cellular IoT Wiki初心:

在我們長期投身于蜂窩物聯(lián)網(wǎng) ODM/OEM 解決方案的實踐過程中,一直被物聯(lián)網(wǎng)技術(shù)碎片化與產(chǎn)業(yè)資源碎片化的問題所困擾。從產(chǎn)品定義、芯片選型,到軟硬件研發(fā)和測試,物聯(lián)網(wǎng)技術(shù)的碎片化以及產(chǎn)業(yè)資源的碎片化,始終對團隊的產(chǎn)品開發(fā)交付質(zhì)量和效率形成制約。為了減少因物聯(lián)網(wǎng)碎片化而帶來的重復開發(fā)工作,我們著手對物聯(lián)網(wǎng)開發(fā)中高頻應(yīng)用的技術(shù)知識進行沉淀管理,并基于 Bloom OS 搭建了不同平臺的 RTOS 應(yīng)用生態(tài)。后來我們發(fā)現(xiàn),很多物聯(lián)網(wǎng)產(chǎn)品開發(fā)團隊都面臨著相似的困擾,于是,我們決定向全體物聯(lián)網(wǎng)行業(yè)開發(fā)者開放奇跡物聯(lián)內(nèi)部沉淀的應(yīng)用技術(shù)知識庫 Wiki,期望能為更多物聯(lián)網(wǎng)產(chǎn)品開發(fā)者減輕一些重復造輪子的負擔。

Cellular IoT Wiki沉淀的技術(shù)內(nèi)容方向如下:

wKgaombqoM2AYL2RAAQrZ8e-uz8392.jpg

奇跡物聯(lián)的業(yè)務(wù)服務(wù)范圍:基于自研的NB-IoT、Cat1、Cat4等物聯(lián)網(wǎng)模組,為客戶物聯(lián)網(wǎng)ODM/OEM解決方案服務(wù)。我們的研發(fā)技術(shù)中心在石家莊,PCBA生產(chǎn)基地分布在深圳、石家莊、北京三個工廠,滿足不同區(qū)域&不同量產(chǎn)規(guī)模&不同產(chǎn)品開發(fā)階段的生產(chǎn)制造任務(wù)。跟傳統(tǒng)PCBA工廠最大的區(qū)別是我們只服務(wù)物聯(lián)網(wǎng)行業(yè)客戶。

連接我們,和10000+物聯(lián)網(wǎng)開發(fā)者一起降低技術(shù)和成本門檻

讓蜂窩物聯(lián)網(wǎng)應(yīng)用更簡單~~

哈哈你終于滑到最重要的模塊了,

千萬不!要!劃!走!忍住沖動!~

歡迎加入飛書“開源技術(shù)交流群”,隨時找到我們哦~

點擊鏈接如何加入奇跡物聯(lián)技術(shù)話題群(https://rckrv97mzx.feishu.cn/docx/Xskpd1cFQo7hu9x5EuicbsjTnTf)可以獲取加入技術(shù)話題群攻略

Hey 物聯(lián)網(wǎng)從業(yè)者,

你是否有了解過奇跡物聯(lián)的官方公眾號“eSIM物聯(lián)工場”呢?

這里是奇跡物聯(lián)的物聯(lián)網(wǎng)應(yīng)用技術(shù)開源wiki主陣地,歡迎關(guān)注公眾號,不迷路~

及時獲得最新物聯(lián)網(wǎng)應(yīng)用技術(shù)沉淀發(fā)布

審核編輯 黃宇

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 嵌入式
    +關(guān)注

    關(guān)注

    5152

    文章

    19678

    瀏覽量

    317798
  • FATFS
    +關(guān)注

    關(guān)注

    0

    文章

    44

    瀏覽量

    18884
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    服務(wù)器數(shù)據(jù)恢復—ocfs2文件系統(tǒng)被格式化為Ext4文件系統(tǒng)的數(shù)據(jù)恢復案例

    服務(wù)器存儲數(shù)據(jù)恢復環(huán)境&故障: 人為誤操作將Ext4文件系統(tǒng)誤裝入一臺服務(wù)器存儲上的Ocfs2文件系統(tǒng)數(shù)據(jù)卷上,導致原Ocfs2文件系統(tǒng)被格式化為Ext4文件系統(tǒng)。
    的頭像 發(fā)表于 06-10 12:03 ?222次閱讀
    服務(wù)器數(shù)據(jù)恢復—ocfs2<b class='flag-5'>文件系統(tǒng)</b>被格式化為Ext4<b class='flag-5'>文件系統(tǒng)</b>的數(shù)據(jù)恢復案例

    如何正確選擇嵌入式文件系統(tǒng)?

    操作系統(tǒng),由于有文件系統(tǒng)以及緩存的存在,在數(shù)據(jù)存儲方面的使用注意事項比單片機直接寫存儲器的應(yīng)用會有更多的要求才能達到數(shù)據(jù)的穩(wěn)定可靠。如下都是比較常見的異常:系統(tǒng)沒有正常
    的頭像 發(fā)表于 03-17 11:35 ?507次閱讀
    如何正確<b class='flag-5'>選擇</b>嵌入式<b class='flag-5'>文件系統(tǒng)</b>?

    通過FATFS文件系統(tǒng)讀寫SD卡創(chuàng)建文件可以了,加入MSC一直顯示一個沒有格式化的U盤盤符,也不能格式化,為什么?

    通過FATFS文件系統(tǒng)讀寫SD卡創(chuàng)建文件可以了,但加入MSC,一直顯示一個沒有格式化的U盤盤符,也不能格式化,這是什么問題導致的
    發(fā)表于 03-12 07:20

    NFS網(wǎng)絡(luò)文件系統(tǒng)深度解析

    NFS:Network File System 網(wǎng)絡(luò)文件系統(tǒng),基于內(nèi)核的文件系統(tǒng)。Sun 公司開發(fā),通過使用 NFS,用戶和程序可以像訪問本地文件一樣訪問遠端系統(tǒng)上的
    的頭像 發(fā)表于 03-01 14:15 ?721次閱讀

    香港主機托管和國內(nèi)主機的優(yōu)缺點比較

    香港主機托管和國內(nèi)主機(以大陸主機為例)的優(yōu)缺點比較,主機推薦小編為您整理發(fā)布香港主機托管和國內(nèi)主機的優(yōu)缺點比較,希望對您有幫助。
    的頭像 發(fā)表于 02-05 17:42 ?452次閱讀

    【S32K146 RT-thread】基于內(nèi)部PFLASH的littlefs適配

    LittleFS是一個應(yīng)用于單片機內(nèi)部flash和外掛NORflash的文件系統(tǒng)。由于它相比傳統(tǒng)的FAT文件系統(tǒng)更適合于小型嵌入式系統(tǒng),具有
    的頭像 發(fā)表于 01-14 18:32 ?1706次閱讀
    【S32K146 RT-thread】基于內(nèi)部PFLASH的<b class='flag-5'>littlefs</b>適配

    SMD與DIP元件的優(yōu)缺點比較 SMD元件在LED燈具中的應(yīng)用

    SMD與DIP元件的優(yōu)缺點比較 SMD元件的優(yōu)缺點 優(yōu)點 : 體積小巧 :SMD(Surface Mount Device)元件的體積通常很小,這使得它們能夠在有限的空間內(nèi)安裝更多的元件,從而
    的頭像 發(fā)表于 12-13 09:38 ?1262次閱讀

    Ubuntu系統(tǒng)優(yōu)缺點分析 Ubuntu系統(tǒng)與Windows的比較

    Ubuntu是一個基于Linux的開源操作系統(tǒng),它以其穩(wěn)定性、安全性和社區(qū)支持而聞名。以下是對Ubuntu系統(tǒng)優(yōu)缺點的分析,以及與Windows系統(tǒng)
    的頭像 發(fā)表于 12-12 14:31 ?3745次閱讀

    stm32單片機基于rt-thread 的 littlefs 文件系統(tǒng) 的使用

    簡介littlefs是ARM官方推出的,專為嵌入式系統(tǒng)設(shè)計的文件系統(tǒng),相比傳統(tǒng)的文件系統(tǒng)littlefs具有以下優(yōu)點:1、自帶擦寫均衡2、
    的頭像 發(fā)表于 11-06 08:04 ?3047次閱讀
    stm32單片機基于rt-thread 的 <b class='flag-5'>littlefs</b> <b class='flag-5'>文件系統(tǒng)</b> 的使用

    FPGA與ASIC的優(yōu)缺點比較

    FPGA(現(xiàn)場可編程門陣列)與ASIC(專用集成電路)是兩種不同的硬件實現(xiàn)方式,各自具有獨特的優(yōu)缺點。以下是對兩者優(yōu)缺點比較: FPGA的優(yōu)點 可編程性強 :FPGA具有高度的可編程性,可以靈活
    的頭像 發(fā)表于 10-25 09:24 ?1725次閱讀

    Linux根文件系統(tǒng)的掛載過程

    Linux根文件系統(tǒng)(rootfs)是Linux系統(tǒng)中所有其他文件系統(tǒng)和目錄的起點,它是內(nèi)核啟動時掛載的第一個文件系統(tǒng)
    的頭像 發(fā)表于 10-05 16:50 ?976次閱讀

    如何構(gòu)建Linux根文件系統(tǒng)

    構(gòu)建Linux根文件系統(tǒng)是一個涉及多個步驟和概念的過程,它對于Linux系統(tǒng)的啟動和運行至關(guān)重要。
    的頭像 發(fā)表于 10-05 16:47 ?698次閱讀

    rtthread支持nandflash掛載fatfs文件系統(tǒng)嗎?

    rtthread支持nandflash掛載fatfs文件系統(tǒng)
    發(fā)表于 09-27 09:45

    請問MSC+FATFS不兼容嗎?

    目前在做一個USB導出LOG的功能,使用文件系統(tǒng) FATFS 將日志寫入文件(用的內(nèi)部flash,后512k),再用USB MSC虛擬U盤,連接PC可以直接將LOG文件拖出來,目前功能
    發(fā)表于 09-26 07:42

    如何修改buildroot和debian文件系統(tǒng)

    本文檔主要介紹在沒有編譯環(huán)境的情況下,如何修改buildroot和debian文件系統(tǒng)方法,如在buildroot文件系統(tǒng)中添加文件、修改目錄等文件操作,在debian
    的頭像 發(fā)表于 07-22 17:46 ?902次閱讀
    如何修改buildroot和debian<b class='flag-5'>文件系統(tǒng)</b>