JFFS2 Summary サポート

近頃のJFFS2にはSummaryサポートというものがある。

MTDの扱うデバイス(Flash-ROM)には、ブロック全体を何個かに分割した消去ブロック(erase block)というものがある。
Flash-ROMでデータを消去する際には、消去ブロック全体を消すというオペレーションが要求される(一部のみの消去は不可能)。このため、新たな領域の確保が必要で、既存ブロックの消去が必要な場合には、JFFS2は有効なデータを別ブロックに移動するGC(Garbage Collection)を行う。
GCを有効に機能させるため、どのデータがどの(物理的)位置に存在するかという調査を予め行っておく必要があるのだが、JFFS2ではこれをマウント時に全て行う。

昔の8MBや16MBといった比較的小規模なFlash-ROMではこれは大きな問題にはならないが、256MBや512MBといった近頃のFlash-ROMでは、これはマウント時間の増大という影響として顕在化する。

JFFS2 Summary機能はマウント時間の短縮のために、各消去ブロックの最後にそのブロックに含まれるデータの一覧を予め書き込んでおく機能である。
マウント時にメディア全部を読み込まなくて良いというメリットがある。(もちろん、実際のデータの利用前にはチェックが必要だが)

        • (ここまで前振り)