|
データ部分は複数のセクタをまとめた、クラスタという単
位で管理されます。クラスタのサイズはパーティションのサイズによって変わります。
Windows
ではクラスタサイズが小さくなるよう(クラスタ数が多くなるよう)な傾向で決められているようです。SDカードの規格では16384バイトが1クラスタの
サイズです。データはクラスタ単位で書込まれるので1バイトのデータを書込んだだけでも1クラスタ占有します。そのためクラスタサイズを小さくしたほうが
ディスクの隙間が少なくて済むことになります。小さなファイルを沢山作るとクラスタ内の未使用部分も沢山できしまいます。ただしクラスタサイズを小さくす
るとFATへのアクセスが頻繁に発生し全体のアクセス速度が遅くなるという欠点もあります。
1つのファイルが複数クラスタにまたがっている場合に続きがどのクラスタにあるか、という情報をFATに持ちます。ディレクトリに先頭クラスタ番号が書
かれていてそのクラスタに対応したFATに次のクラスタ番号が書かれます。
図の例では始めのデータがクラスタ2にありその続きがクラスタ4にあることを表しています。FATには次のクラスタ位置、終端であるかのマーク、未使用
クラスタ、壊れているクラスタのマークが格納されます。
FAT12はこのFAT内のクラスタ番号を格納する領域が12bitです。FAT16は16ビット、FAT32は32ビットです。
FATの詳細についてFAT
レイアウトで説明します。 |