MBR

MBRの構造を調べる。

オフセット 内容 サイズ
0 ブートストラップローダ 446
446 パーティションテーブル(後述) 16*4=64
510 ブートシグネチャ(0x55,0xAA) 2


パーティションテーブルの構造

オフセット 内容 サイズ
0 ブートフラグ(0x80=ブート可,0x00=ブート不可) 1
1 パーティションの最初のセクタ(CHS形式) 3
4 パーティションの種類(後述) 1
5 パーティションの最後のセクタ(CHS形式) 3
8 パーティションの最初のセクタ(LBA形式) 4
12 パーティションの全セクタ数 4


パーティション識別子(主な物)

ファイルシステム
0x00 空のパーティション
0x01/0x11(隠しパーティション) FAT12
0x04/0x14(隠しパーティション) FAT16(32MB以下)
0x05/0x15(隠しパーティション) 拡張DOS領域
0x06/0x16(隠しパーティション) FAT16(32MBより大きい)
0x07/0x17(隠しパーティション) HPFS/NTFS
0x0B/0x1B(隠しパーティション) FAT32
0x0C/0x1C(隠しパーティション) FAT32(LBA対応)
0x0E/0x1E(隠しパーティション) FAT16(LBA対応)
0x0F/0x1F(隠しパーティション) 拡張DOS領域(LBA対応)


気になる抜けている値って?

ファイルシステム
0x02 XENIX root
0x03 XENIX /usr
0x08 OS/2 とか AIX boot とか Commodore DOS とか色々?
0x09 AIX data とか?
0x0A OS/2 Boot Manager


まぁ、色々ありますねぇ...


とりあえず、目先は、FAT32に絞って追い掛けましょうかねぇ...