YAFFS

出典: フリー百科事典『ウィキペディア(Wikipedia)』
移動: 案内検索
YAFFS
開発者 Charles Manning
正式名 Yet Another Flash File System
導入 ()
構造
限度
特徴
対応OS Linux, Windows CE, pSOS, eCos, ThreadX
テンプレートを表示

YAFFS (Yet Another Flash File System) はCharles Manningによりデザインされ、記述された。所属はAleph Oneであり、ニュージーランドWhitecliffsにある。

Yaffs1はこのファイルシステムの最初のバージョンであり、512バイトに16バイト(OOB;Out-Of-Band)の予備領域を持たせたNANDチップ向けの最初のファイルシステムであった。これらのより古いICは通常ページあたり2~3回書き換えることができた。YAFFSにおいて、ダーティーページはマークされ、特定の予備領域に記録された。

より新しいNANDフラッシュはより大きなページを持っている。2048バイト+64バイト予備領域であり、より厳密な書き込みを必要とした。ブロックの各々のページはシーケンシャルに書き込まなければならず、しかも一度に書き込まなければならない。YAFFS2はこれらのより新しいチップに対応するようデザインされた。YAFFS2はYAFFS1のソースコードに基づいていて、大きな違いとしては内部構造は512バイトサイズに固定されておらず、ブロックシーケンス番号は各々の書き込まれたページに置かれている。これにより古いページは「ライトワンス」ルールに違反すること無く論理的に上書きされる。

YAFFSは頑丈なログ構造化ファイルシステムであり、データ完全性に高い優先度が設定されている。 YAFFSの2番目の目標はハイパフォーマンスである。YAFFSはほとんどの代替よりも通常効率が良いだろう。またポータブルなデザインとなっており、LinuxWinCEpSOSeCosThreadXを始めとして様々な専用目的のOSで使用可能である。変種である「YAFFS/Direct」はOSを持たない環境、組み込みOS、ブートローダで使用され、中枢のファイルシステムとしてだけでなくOSとNANDフラッシュとのシンプルなインターフェイスとしての役割も持つ。

このファイルシステムはGPLおよびAleph Oneとのプロダクトライセンスの両方でライセンスされている。

関連項目[編集]