快閃記憶體檔案系統

快閃記憶體檔案系統英語:Flash file system),是一種為了在快閃記憶體設備上存儲數據而設計的檔案系統,如JFFS2YAFFS等。隨著移動設備的日漸增加,快閃記憶體的存儲能力增加以及價格下降,這類型的檔案系統變得越來越普遍。

電腦上通行的大部分檔案系統,都是針對碟盤存儲設備設計的,套用到快閃記憶體上並不適合。一般的檔案系統,可以通過快閃記憶體轉換層(Flash Translation Layer,FTL)寫入快閃記憶體,但是它的缺點是寫入的效率較差。因此,設計快閃記憶體檔案系統仍然是有必要的。

系統概述,歷史,

系統概述

快閃記憶體設備跟碟盤存儲設備,在硬體上有不同的特性,例如:
  • 抺除區塊(Erasing blocks):快閃記憶體的區塊(block)在寫入之前,要先做抹除(erase)的動作。抺除區塊的時間可能會很長,因此最好利用系統閒置的時間來進行抹除。
  • 耗損平均技術(Wear leveling):快閃記憶體的區塊有抺寫次數的限制,重複抺除、寫入同一個單一區塊將會造成讀取速度變慢,甚至損壞而無法使用,因此快閃記憶體設備的驅動程式需要將抺寫的區塊分散,以延長快閃記憶體壽命。用於快閃記憶體的檔案系統,也需要設計出平均寫入各區塊的功能。
  • 隨機存取(Random access):一般的硬碟,讀寫數據時,需要旋轉磁碟,以找到存放的扇區,因此,一般使用於磁碟的檔案系統,會作最最佳化,以避免搜尋磁碟的作用。但是快閃記憶體可以隨機存取,沒有查找延遲時間,因此不需要這個最最佳化。
設計快閃記憶體檔案系統的基本概念是,當存儲數據需要更新時,檔案系統將會把新的複本寫入一個新的快閃記憶體區塊,將檔案指針重新指向,並在閒置時期將原有的區塊抺除。例如JFFS2YAFFS,都是這樣設計。

歷史

最早的快閃記憶體檔案系統之一,是微軟所研發的FFS2(Flash File System 2),在1990年代,它被套用在MS-DOS上。
在1994年間,PCMCIA組織,通過了快閃記憶體轉換層(Flash Translation Layer,FTL)的規格,允許Linear Flash設備能夠看起來像是FAT磁碟設備,但是仍然保有耗損平均技術的能力。套用相同概念,但為了避免專利爭議,數據光公司(Datalight)創造了FlashFX與FlashFX Pro,作為商業產品。
Linux上實現的快閃記憶體轉換層,稱為MTD。MTD是一個硬體的抽象層,能夠讓快閃記憶體設備看起來像是一種區塊設備,因此能夠將既有的檔案系統,如FATExtXFS等,直接套用在快閃記憶體上。

相關詞條

熱門詞條

聯絡我們