(Translated by https://www.hiragana.jp/)
JFFS - Wikipedia コンテンツにスキップ

JFFS

出典しゅってん: フリー百科ひゃっか事典じてん『ウィキペディア(Wikipedia)』

Journaling Flash File System(または JFFS)は Linux オペレーティングシステムじょうの NOR フラッシュメモリデバイスじょうにおける利用りようけのログ構造こうぞうファイルシステムである。JFFS は JFFS2 によってえられてきている。

設計せっけい

[編集へんしゅう]

フラッシュメモリは磁気じきディスクとはまったくことなるアクセスじょう制約せいやくがある。とくに、フラッシュメモリを消去しょうきょすることは

  • まえ必要ひつようである
  • おそ
  • おおきな(通常つうじょう 64 KiB 以上いじょう)セグメントでおこなわなければならない
  • ある回数かいすうだけおこなうことができる(典型てんけいてきには100まんかい未満みまん

ext2 のようなファイルシステムは典型てんけいてきには、すべての更新こうしんのちに inode やディレクトリのようなデータ構造こうぞうをディスクじょう更新こうしんして、適当てきとう位置いちでデータ構造こうぞう更新こうしんする。このようにウェアレベリングおおきく欠落けつらくしているため、従来じゅうらいのファイルシステムがフラッシュデバイスじょうでのきの利用りようたいして不向ふむきになっている。

JFFS はフラッシュデバイスを循環じゅんかんログとしてあつかうことでウェアレベリング強化きょうかしている。ファイルやディレクトリへのすべての変更へんこうノードうちのログの末尾まつびまれる。個々ここのノードないでは、メタデータをふくむヘッダが最初さいしょまれ、つぎにファイルデータがあればまれる。ノードはヘッダないのオフセットポインタでつながれている。ノードは最初さいしょ有効ゆうこうとしてはじまり、よりあたらしいバージョンのノードが作成さくせいされたとき廃止はいしになる。

ファイルシステムにのこっている自由じゆう空間くうかんはログの先頭せんとう末尾まつびあいだのすきである。これがすくなくなると、ガベージコレクタ先頭せんとうから末尾まつびまで有効ゆうこうなノードをコピーし、廃止はいしされたノードをばす。このようにして空間くうかん回収かいしゅうする。

欠点けってん

[編集へんしゅう]
  • マウントに、ファイルシステムのドライバは inode チェーン全体ぜんたいんで、メモリちゅうたもたなければならない。これは非常ひじょうおそくなりうる。JFFS のメモリ消費しょうひはファイルシステムないのファイルすうにも比例ひれいする。
  • 循環じゅんかんログの設計せっけいは、静的せいてきかどうかにかかわらず、ファイルシステムないすべてのデータがさいみされるという意味いみである。これはおおくの必要ひつようない消去しょうきょし、フラッシュ媒体ばいたい寿命じゅみょうらす。

関連かんれん項目こうもく

[編集へんしゅう]

脚注きゃくちゅう

[編集へんしゅう]

外部がいぶリンク

[編集へんしゅう]