FAT12概要

はりぼてのFDイメージは、FAT12に準じています。
よって、ブートセクタの直後のセクタ、
つまり2セクタ目からは、FATが配置されています。


FAT領域は、メディアの全クラスタをポイントする必要がある為、
最低限、全クラスタ数x12bitの容量が必要になります。
クラスタ数の計算は、
シリンダ数 x ヘッド数(表裏) x トラック当たりのクラスタ数、
となります。
FDの場合、1クラスタ=1セクタなので、
トラック当たりのクラスタ数は、そのまま、トラック当たりのセクタ数になります。
そういうわけで、
80 x 2 x 18 = 2880クラスタ(セクタ)
となります。
FAT12は、クラスタ1つを12bitで識別するので、これを1.5Byteとして、
2880 x 1.5 = 4320Byte
この容量を確保する為に必要なセクタ数を求める。
1セクタの容量は、512Byteなので、
4320 / 512 = 8 余り 224
となる。
つまり、都合、9セクタ必要になる。
FAT領域は、予備として、
もう1セット同じ物を配置する事になっているので、
更に9セクタ、合計18セクタ必要となる。


2つのFAT領域の後には、ルートディレクトリ用の領域が続きます。
FDの場合、ルートディレクトのエントリ数は、224個となっています。
エントリは、1つにつき、32Byte必要になるので、全体では、
224 x 32 = 7168Byte
となり、この容量を確保する為に必要なセクタ数は、
7168 / 512 = 14
となる。
まぁ、14セクタを割り当てた結果、
自動的にエントリ数が224個に決まったのかもしれない。


そういうわけで、FDの先頭部分のレイアウトは、

  • ブートセクタ(1セクタ)
  • FAT1(9セクタ)
  • FAT2(9セクタ)
  • ルートディレクトリエントリ(14セクタ)

となって、34セクタ目からが、フリー領域になる。
ちなみに、34セクタ目は、
シリンダ0、ヘッド1、セクタ16になると。
更に、ここが、2クラスタ目になると。