|
Journaling Flash File System(または JFFS)は Linux オペレーティングシステム上の NOR フラッシュメモリデバイス上における利用向けのログ構造化ファイルシステムである。JFFS は JFFS2 によって置き換えられてきている。 == 設計 == フラッシュメモリは磁気ディスクとはまったく異なるアクセス上の制約がある。特に、フラッシュメモリを消去することは * 書き込む前に必要である * 遅い * 大きな(通常 64 KiB 以上)セグメントで行わなければならない * ある回数だけ行うことができる(典型的には100万回未満) ext2 のようなファイルシステムは典型的には、すべての更新の後に inode やディレクトリのようなデータ構造をディスク上で更新して、適当な位置でデータ構造を更新する。このようにウェアレベリングが大きく欠落しているため、従来のファイルシステムがフラッシュデバイス上での読み書きの利用に対して不向きになっている。 JFFS はフラッシュデバイスを循環ログとして扱うことでウェアレベリングを強化している。ファイルやディレクトリへのすべての変更は''ノード''内のログの末尾に書き込まれる。個々のノード内では、メタデータを含むヘッダが最初に書き込まれ、次にファイルデータがあれば書き込まれる。ノードはヘッダ内のオフセットポインタでつながれている。ノードは最初''有効''として始まり、より新しいバージョンのノードが作成されたとき''廃止''になる。 ファイルシステムに残っている自由空間はログの先頭と末尾の間のすき間である。これが少なくなると、ガベージコレクタが先頭から末尾まで有効なノードをコピーし、廃止されたノードを飛ばす。このようにして空間を回収する。 抄文引用元・出典: フリー百科事典『 ウィキペディア(Wikipedia)』 ■ウィキペディアで「JFFS」の詳細全文を読む スポンサード リンク
|