YAFFS
YAFFS (Yet Another Flash File System) はCharles Manningによりデザインされ、記述された。所属はAleph Oneであり、ニュージーランドのWhitecliffsにある。
Yaffs1はこのファイルシステムの最初のバージョンであり、512バイトに16バイト(OOB;Out-Of-Band)の予備領域を持たせた当時最新鋭のNANDチップ向けの最初のファイルシステムであった。作業は2002年に開始され、その年の後半に最初にリリースされました。最初の作業は、Toby Churchill LtdとBrightstar Engineeringが後援しました。これらのより古いチップは通常1ページあたり2～3回書き換えることができた。YAFFSにおいて、ダーティーページはマークされ、特定の予備領域に記録された。
より新しいNANDフラッシュはより大きなページを持っている。最初は2048バイト＋64バイト予備領域であり、後に4Kのより大きいページを持ち、後者の方がより書き込み要件が厳しくなります。
消去ブロック（128キロバイト）内の各々のページはシーケンシャルに書き込まなければならず、しかも一度に書き込まなければならない。
「ライトワンスルール」（「ライトワンスプロパティ」）を適用するストレージシステムを設計することには、いくつかの利点があります。
YAFFS2はこれらのより新しいチップに対応するようデザインされた。YAFFS2はYAFFS1のソースコードに基づいていて、大きな違いとしては内部構造は512バイトサイズに固定されておらず、ブロックシーケンス番号は各々の書き込まれたページに置かれている。これにより古いページは「ライトワンス」ルールに違反すること無く論理的に上書きされる。2003年後半にリリースされました。
YAFFSは頑丈なログ構造ファイルシステムであり、データ完全性に高い優先度が設定されている。YAFFSの2番目の目標はハイパフォーマンスである。YAFFSはほとんどの代替よりも通常効率が良いだろう。またポータブルなデザインとなっており、Linux、WinCE、、RTEMS、eCos、ThreadXを始めとして様々な専用目的のOSで使用可能である。変種である「YAFFS/Direct」はOSを持たない環境、組み込みOS、ブートローダで使用され、中枢のファイルシステムとしてだけでなくOSとNANDフラッシュとのシンプルなインターフェイスとしての役割も持つ。
このファイルシステムはGPLおよびAleph Oneとのプロダクトライセンスの両方でライセンスされている。