FAT Partition Boot Sector

The Partition Boot Sector contains information that the file system uses to access the volume. On x86-based computers, the Master Boot Record use the Partition Boot Sector on the system partition to load the operating system kernel files.

The table describes the fields in the Partition Boot Sector for a volume formatted with the FAT file system.

Fields in Partition Boot Sector (FAT File System)

Byte Offset (in hex) Field Length Sample Value Meaning
00 3 bytes EB 3C 90 Jump instruction
03 8 bytes MSDOS5.0 OEM Name in text
0B 25 bytes BIOS Parameter Block
24 26 bytes Extended BIOS Parameter Block
3E 448 bytes Bootstrap code
1FE 2 bytes 0x55AA End of sector marker

The Table describes BIOS Parameter Block and Extended BIOS Parameter Block Fields.

BIOS Parameter Block and Extended BIOS Parameter Block Fields

Byte Offset Field Length Sample Value Meaning
0x0B WORD 0x0002 Bytes per Sector. The size of a hardware sector. For most disks in use in the United States, the value of this field is 512.
0x0D BYTE 0x08 Sectors Per Cluster. The number of sectors in a cluster. The default cluster size for a volume depends on the volume size and the file system.
0x0E WORD 0x0100 Reserved Sectors. The number of sectors from the Partition Boot Sector to the start of the first file allocation table, including the Partition Boot Sector. The minimum value is 1. If the value is greater than 1, it means that the bootstrap code is too long to fit completely in the Partition Boot Sector.
0x10 BYTE 0x02 Number of file allocation tables (FATs). The number of copies of the file allocation table on the volume. Typically, the value of this field is 2.
0x11 WORD 0x0002 Root Entries. The total number of file name entries that can be stored in the root folder of the volume. One entry is always used as a Volume Label. Files with long filenames use up multiple entries per file. Therefore, the largest number of files in the root folder is typically 511, but you will run out of entries sooner if you use long filenames.
0x13 WORD 0x0000 Small Sectors. The number of sectors on the volume if the number fits in 16 bits (65535). For volumes larger than 65536 sectors, this field has a value of 0 and the Large Sectors field is used instead.
0x15 BYTE 0xF8 Media Type. Provides information about the media being used. A value of 0xF8 indicates a hard disk.
0x16 WORD 0xC900 Sectors per file allocation table (FAT). Number of sectors occupied by each of the file allocation tables on the volume. By using this information, together with the Number of FATs and Reserved Sectors, you can compute where the root folder begins. By using the number of entries in the root folder, you can also compute where the user data area of the volume begins.
0x18 WORD 0x3F00 Sectors per Track. The apparent disk geometry in use when the disk was low-level formatted.
0x1A WORD 0x1000 Number of Heads. The apparent disk geometry in use when the disk was low-level formatted.
0x1C DWORD 3F 00 00 00 Hidden Sectors. Same as the Relative Sector field in the Partition Table.
0x20 DWORD 51 42 06 00 Large Sectors. If the Small Sectors field is zero, this field contains the total number of sectors in the volume. If Small Sectors is nonzero, this field contains zero.
0x24 BYTE 0x80 Physical Disk Number. This is related to the BIOS physical disk number. Floppy drives are numbered starting with 0x00 for the A disk. Physical hard disks are numbered starting with 0x80. The value is typically 0x80 for hard disks, regardless of how many physical disk drives exist, because the value is only relevant if the device is the startup disk.
0x25 BYTE 0x00 Current Head. Not used by the FAT file system.
0x26 BYTE 0x29 Signature. Must be either 0x28 or 0x29 in order to be recognized by Windows NT.
0x27 4 bytes CE 13 46 30 Volume Serial Number. A unique number that is created when you format the volume.
0x2B 11 bytes NO NAME Volume Label. This field was used to store the volume label, but the volume label is now stored as special file in the root directory.
0x36 8 bytes FAT16 System ID. Either FAT12 or FAT16, depending on the format of the disk.