littlefs系列 介紹

2021-10-03 19:01:49 字數 528 閱讀 9454

1、littlefs主要用在微控制器和flash上,是一種嵌入式檔案系統。主要有3個特點:

1)、掉電恢復

在寫入時即使復位或者掉電也可以恢復到上乙個正確的狀態。

2)、擦寫均衡

有效延長flash的使用壽命

3)、有限的ram/rom

節省rom和ram空間

2、已有的檔案系統

1)非掉電恢復,基於block的檔案系統,常見的有fat和ext2。這兩個檔案系統在寫入檔案時是原地更新的,不具備非掉電恢復的特性。

2) 日誌式的檔案系統,比如jffs,yaffs等,具備掉電恢復的特性。但是這幾個系統消耗了太多的ram,且效能較低。

3) ext4和cow型別的btrfs具有良好的恢復性和讀寫效能,但是需要的資源過多,不適合小型的嵌入式系統。

littlefs綜合了日誌式檔案系統和cow檔案系統的優點。從sub-block的角度來看,littlefs是基於日誌的檔案系統,提供了metadata的原子更新;從super-block的角度,littlefs是基於block的cow樹。

littlefs系列 重要的資料結構

1 檔案型別 file types enum lfs type 2 檔案開啟時的標誌 file open flags enum lfs open flags 3 檔案seek時的標誌 file seek flags enum lfs whence flags 4 lfs的配置引數 configura...

arm linux 系列工具介紹

gnu gcc簡介 gnu gcc是一套面向嵌入式領域的交叉編譯工具,支援多種程式語言 多種優化選項並且能夠支援分步編譯 支援多種反彙編方式 支援多種除錯資訊格式,目前支援x86 arm7 strongarm ppc4xx mpc8xx mips r3000等多種cpu。gnu gcc的基本功能包括...

Apache Kafka教程A系列 介紹

在大資料中,使用了大量的資料。關於資料,我們有兩個主要挑戰。第乙個挑戰是如何收集大量資料,第二個挑戰是分析收集的資料。為了克服這些挑戰,您必須使用訊息傳遞系統。卡夫卡專為分布式高吞吐量系統而設計。卡夫卡傾向於非常好地取代傳統的資訊 者。與其他訊息系統相比,kafka具有更好的吞吐量,內建分割槽,複製...