複製鏈接
請複製以下鏈接發送給好友

閃存文件系統

鎖定
閃存文件系統英語:Flash file system),是一種為了在閃存設備上存儲數據而設計的文件系統,如JFFS2YAFFS等。隨着移動設備的日漸增加,閃存的存儲能力增加以及價格下降,這類型的文件系統變得越來越普遍。
電腦上通行的大部分文件系統,都是針對碟盤存儲設備設計的,應用到閃存上並不適合。一般的文件系統,可以通過閃存轉換層(Flash Translation Layer,FTL)寫入閃存,但是它的缺點是寫入的效率較差。因此,設計閃存文件系統仍然是有必要的。
中文名
閃存文件系統
外文名
Flash file system
釋    義
一種為了在閃存設備上存儲數據而設計的文件系統

閃存文件系統系統簡介

閃存設備跟碟盤存儲設備,在硬件上有不同的特性,例如:
  • 抺除區塊(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等,直接應用在閃存上。