What Is the Master Partition Table?

The MPT stores information about partitions

The master partition table (MPT) is a component of the master boot record/sector that contains a description of the partitions on the hard disk drive, like their types and sizes. The master partition table accompanies the disk signature and master boot code to form the master boot record.

Due to the size (64 bytes) of the MPT, a maximum of four partitions (16 bytes each) may be defined on a hard drive. However, additional partitions can be set up by defining one of the physical partitions as an extended partition and then defining additional logical partitions within that extended partition.

Black and white picture of a hard disk drive
Photo by Patrick Lindenberg on Unsplash

The master partition table is sometimes referred to as just partition table or partition map, or even abbreviated as MPT.

Master Partition Table Structure and Location

The master boot record includes 446 bytes of code, followed by the partition table with 64 bytes, and the remaining two bytes are reserved for the disk signature.

Here are the specific duties of each 16 bytes of a master partition table:

Size (Bytes) Description
1 This contains the boot label
1 Starting head
1 Starting sector (first six bits) and starting cylinder (higher two bits)
1 This byte holds the lower eight bits of the starting cylinder
1 This contains the partition type
1 Ending head
1 Ending sector (first six bits) and ending cylinder (higher two bits)
1 This byte holds the lower eight bits of the ending cylinder
4 Leading sectors of the partition
4 Number of sectors in the partition

The boot label is particularly useful when more than one operating system is installed on the hard drive. Since there is then more than one primary partition, the boot label lets you choose which OS to boot to.

However, the partition table always keeps track of one partition that serves as the "Active" one that gets booted to if no other options are chosen.

The partition type section of the partition table refers to the file system on that partition, where the 06 or 0E partition ID means FAT, 0B or 0C means FAT32, and 07 means NTFS or OS/2 HPFS.

With a partition that's 512 bytes for every sector, you need to multiply the total number of sectors by 512 to get the number of bytes of the total partition. That number can then be divided by 1,024 to get the number into kilobytes, and then again for megabytes, and again for gigabytes, if needed.

After the first partition table, which is offset 1BE of the MBR, the other partition tables for the second, third, and fourth primary partition, are at 1CE, 1DE, and 1EE:

Offset Offset    
Hex Decimal Length (Bytes) Description
1BE - 1CD 446-461 16 Primary Partition 1
1CE-1DD 462-477 16 Primary Partition 2
1DE-1ED 478-493 16 Primary Partition 3
1EE-1FD 494-509 16 Primary Partition 4

You can read the hex version of the master partition table with tools like wxHexEditor and Active@ Disk Editor.

Free disk partitioning tools are an easy way to manipulate partitions, mark partitions as "Active," and more.

Was this page helpful?