JFFS
[Wikipedia|▼Menu]

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

フラッシュメモリは磁気ディスクとはまったく異なるアクセス上の制約がある。特に、フラッシュメモリを消去することは

書き込む前に必要である

遅い

大きな(通常 64 KiB 以上)セグメントで行わなければならない

ある回数だけ行うことができる(典型的には100万回未満)

ext2 のようなファイルシステムは典型的には、すべての更新の後に inode やディレクトリのようなデータ構造をディスク上で更新して、適当な位置でデータ構造を更新する。このようにウェアレベリングが大きく欠落しているため、従来のファイルシステムがフラッシュデバイス上での読み書きの利用に対して不向きになっている。

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

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

マウント時に、ファイルシステムのドライバは inode チェーン全体を読み込んで、メモリ中に保たなければならない。これは非常に遅くなりうる。JFFS のメモリ消費はファイルシステム内のファイル数にも比例する。

循環ログの設計は、静的かどうかにかかわらず、ファイルシステム内のすべてのデータが再書き込みされるという意味である。これは多くの必要ない消去を生み出し、フラッシュ媒体の寿命を減らす。

関連項目

フラッシュファイルシステム

JFFS2

YAFFS


脚注

Woodhouse, David. ⇒
JFFS2: The Journalling Flash File System, version 2.

外部リンク

“Flash Filesystems for Embedded Linux Systems
”. 2012年12月5日時点の ⇒オリジナルよりアーカイブ。2012年12月5日閲覧。

JFFS documentation and official mailing list










ファイルシステム
ディスク



Advanced Disc Filing System(英語版)

AdvFS(英語版)

APFS

Bcachefs

Be File System(英語版)

Btrfs

CrossDOS(英語版)

Disc Filing System(英語版)

Episode(英語版)

EFS

HPFS

ext

ext2

ext3

ext3cow

ext4


FAT

FAT12

FAT16

FAT32

exFAT


Files-11

HAMMER

HFS

HFS Plus


IBM General Parallel File System

JFS

Macintosh File System(英語版)

MINIX

NetWare File System(英語版)

NILFS

Novell Storage Service

NTFS

QFS

QNX4FS

ReFS

ReiserFS

Reiser4


SpadFS(英語版)

UBIFS

UFS

VERITAS File System

Write Anywhere File Layout(英語版)

XFS

Xsan

ZFS

光ディスク / 磁気テープ


次ページ
記事の検索
おまかせリスト
▼オプションを表示
ブックマーク登録
mixiチェック!
Twitterに投稿
オプション/リンク一覧
話題のニュース
列車運行情報
暇つぶしWikipedia

Size:9 KB
出典: フリー百科事典『ウィキペディア(Wikipedia)
担当:undef