So you got a brand new SSD and went to Disk Management to initialize it. The Disk Management utility asks whether you want to use MBR or GPT partition style. You are unsure which one to choose.
Master Boot Record (MBR) and GUID Partition Table (GPT) are two partition format styles that make it possible for your computer to load the operating system from the hard drive and also keep the data indexed and organized. For most people, GPT – the newer of the two, should be the partition style of choice.
However, things are not always straightforward. Even though we recommend GPT most of the time for modern usage, there might be situations where you will need to choose MBR partition format. What are those situations? To find out, please read on.
What is Master Boot Record (MBR)?
Master Boot Record (MBR) is a legacy form of boot sector partitioning. It is the first sector of a disk drive that holds information regarding how the disk is partitioned. It also contains the boot loader, which tells your machine how to load the OS.
The MBR consists of three parts:
- Primary Boot Loader
- Disk Partition Table
- End Signature
Primary Boot Loader
The MBR reserves the first 440 bytes of disk space for the primary boot loader. Windows places a very simplistic boot loader here, while other OSs are able to place more sophisticated, multi-stage bootloaders.
Disk Partition Table
The disk partition table is located in cylinder 0, head 0 and sector 1 of the hard drive. It stores information on how the disk is partitioned. MBR allocates 16 bytes of data for each partition record and can assign a total of 64 bytes. Thus, MBR can address no more than 4 primary partitions, or 3 primary partitions and 1 extended partition.
The extended partition is used to create multiple logical partitions. This is useful when the user needs to create more than 4 partitions.
However, an Operating System can only be installed in primary partitions, not logical partitions
A 2-byte signature marks the end of MBR. This is always set to hexadecimal value 0x55AA.
Some features of the master boot record are:
- Ability to initialize boot loader in legacy BIOs mode.
- Can address up to 2 TB of disk space.
- Can have 4 primary partitions, or 3 primary partitions and 1 extended partition.
- Able to load Windows 7 and earlier versions of Windows.
- Compatibility with all versions of Window, including Windows 7 and earlier versions.
- Required to maintain compatibility with older 32-bit hardware.
- Uses 32-bit values, thus has a lower overhead than GPT
- Maximum partition capacity is 2TB.
- Limited to 4 primary partitions or 3 primary partitions and 1 extended partition
- Not resilient against MBR corruption.
- Has no built in error correction for data security since it uses BIOS.
What is GUID Partition Table (GPT)?
The GUID Partition Table (GPT) is a partition format style that was introduced as a part of the United Extensible Firmware Interface (UEFI) initiative.
GPT was designed to architecturally address some of the limitations of the MBR. GPT is newer, more flexible, and more robust than MBR.
GPT uses Logical Block Addressing (LBA) to specify blocks of data. The first block is labeled LBA0, then LBA1, LBA2, … and so on. Each logical block is 512 bytes in size.
GPT stores Protective MBR in LBA0, Primary GPT Header in LBA1, and partition entries in LBA 2- LBA33.
The GPT structure consists of:
- Protective MBR
- Primary GPT
- Partition Entries.
- Secondary GPT
The protective MBR is space reserved in GPT for legacy purposes. It resides in LBA0.
A system that does not recognize the GPT, will likely overwrite GPT disks. This provides backward compatibility with systems that do not recognize the GPT.
The Protective MBR encompasses either the entirety of the disk or 2 TB, whichever is smaller.
The Primary GPT spans LBA1 – LBA33 of the GPT. LBA1 consists of the Primary GPT Header, which has a pointer to the partition table. It also defines the amount of space available in the disk.
The corresponding Partition entries are located in LBA2 – LBA 33. Each entry is 128 bytes long, and a single LBA can store 4 entries. Theoretically, a GPT is capable of having an infinite number of partitions. In Windows, though, a GPT can store information about 128 partitions (32 LBAs x 4 partition entries in each LBA).
These LBAs store the information on disk partition and their location.
These are the usable blocks of the disk formatted in a GPT style partition where actual data are stored. In a disk with 512-byte sectors, the first usable block is at LBA34.
Each Partition Block in the GPT formatted disk is an individual volume. Thus, in accordance with the entries in Primary GPT, a GPT formatted disk can have 128 volumes.
Unlike in MBR, each volume in GPT can be a primary volume. Thus, user can have up to128 primary volumes capable of hosting 128 bootloaders in a GPT formatted disk.
The GPT schema dictates that a copy of the Primary GPT be stored in the last sectors of the disk. These are usually labeled LBA-33 – LBA-1.
This provides redundancy to the GPT scheme, which can be used as a backup in case of corruption or failure of the Primary GPT.
- Maximum partition capacity is 9.4ZB
- Max. 128 primary partitions.
- Resilient towards primary GPT corruption since it also has a secondary GPT.
- Able to utilize UEFI features such as Secure Boot, Fast Startup, etc
- Incompatible as a bootloader with Windows 7 and earlier versions of Windows.
- Incompatible with older 32-bit hardware.
- Higher overhead than MBR since it uses 64-bit values.
MBR vs GPT: the Differences
The differences between MBR and GPT are as follows:
Firmware is a software that provides low-level control for a hardware device and is embedded in the device itself. Basic Input Output System (BIOS) and Unified Extended Firmware Interface (UEFI) are the two firmware that are prevalent in computers today. BIOS is the older of the two and currently enjoys a legacy status.
MBR requires legacy-BIOS firmware for operation, while GPT, as a part of UEFI specification, requires EFI firmware to load.
Theoretically, it is possible to boot into some OS with MBR partitioned disks in systems with EFI firmware. Windows, however, requires that disks be GPT partitioned for UEFI usage. If your disk is MBR partitioned, Windows provides diskpart tool to convert it to GPT without data loss.
Similarly, it is also theoretically possible to boot into some OS in a legacy-BIOS machine with GPT partitioned disks. However, Windows does not allow this.
Windows 7 and older versions of Windows running on 32-bit machines are compatible with only MBR partitioned disks. Windows 8, and newer are able to utilize GPT as well as MBR partitioned disks.
This is because Windows 7 and earlier do not support UEFI on 32-bit platforms, and thus, do not allow booting from GPT partitions. 64-bit versions of earlier Windows can read and write from GPT partition disks, but cannot boot from them.
Maximum Partition Capacity
The maximum size of the disk that an MBR partition can address is limited to 2 TB. This is because MBR stores block address and sizes in the partition table using 32-bits. A single sector is 512 bytes in size. Hence, the theoretical maximum size this can store is (2^32-1) x 512 bytes = 2 TiB (2.19 TB).
A GPT partition table, on the other hand, is able to use 64-bits. Thus, the theoretical maximum size that a GPT partitioned disk can have is (2^64-1) x 512 bytes = 8 ZiB (9.44 ZB). It is to be noted that Windows file systems are currently limited to 256 TB each.
Number of Partitions
As discussed earlier, MBR allocates 16 bytes of data for each partition record and can assign a total of 64 bytes. Thus, MBR can address no more than 4 primary partitions, or 3 primary partitions and 1 extended partition. You can have unlimited logical partitions in the extended partition. However, you can install an OS in only a primary partition.
A GPT partition, on the other hand, can theoretically have unlimited primary partitions. However, its implementation in Windows is limited to only 128 partitions. Each of these 128 partitions can be a primary partition. Thus, you can have 128 copies of OS installed in a GPT formatted drive.
Although neither MBR, nor GPT partitions are fundamentally designed to be faster than each other, there can be some difference in boot speed between the two. This is due to the fact the MBR uses legacy BIOS while GPT uses UEFI.
Legacy BIOS goes through the process of Power On Self Test (POST), which checks if all hardware are ready for normal operation. Thereafter, it looks for the MBR to launch the bootloader, which calls the OS kernel which then launches Windows.
In contrast, UEFI calls EFI bootloader on startup, which calls the kernel, which then launches Windows. Fast startup can be enabled in UEFI mode, which bypasses POST for non-critical hardware components.
MBR is a simple Partition Table scheme that puts boot data and partitions together. Thus, MBR partitions have a higher chance of data loss in case of corruption of the partition.
GPT separates the partition table and data blocks which gives a more robust configuration. Further, GPT schema provides a secondary GPT that can be used as a backup in case of a corrupted primary GPT.
Additionally, GPT has Secure Boot feature, which prevents malware from hijacking your boot process. It also incorporates Cyclic Redundancy Check (CRC) for check against data corruption.
MBR vs GPT: Similarities
Although GPT was introduced to address limitations of the MBR, and eventually replace it, the two share some features as listed below:
- The host boot loader can call the OS kernel to start the process of launching the OS.
- Host partition table, which keeps information on partition size and location.
- There can theoretically be unlimited partitions. In MBR, this comes from the capability to assign the fourth partition as an extended partition that can host unlimited logical partitions. GPT, by design, can host unlimited partitions (although this is limited to 124 in Windows).
- Both use Logical Block Addressing to specify blocks of data.
- MBR stores Master Boot Code and GPT stores Protective MBR in sector 1 of the disk.
MBR or GPT: Which is Better for an SSD?
Since GPT is the newer partition style of the two, we can unequivocally recommend using it as the partition style for your hard drive, regardless of if it is an SSD. If you need further convincing, consider that:
- GPT has support for more than 2 TB of hard disk space.
- GPT can provide for more than 4 OS to be multi-booted.
- Partitions in GPT format are more secure and can recover from partition table corruption more readily.
- GPT is suitable for newer versions of Windows.
- UEFI can provide Fast Startup, Secure Boot, and Cyclic Redundancy Check.
However, you will need to partition your SSD in MBR format in the following cases:
- Your computer does not support UEFI mode.
- You are running Windows 7 or earlier versions of Windows.
Comparison Between Key Specifications
The following table summarizes the differences between MBR and GPT in their key specifications:
|Firmware Support||MBR requires legacy BIOS.||GPT requires UEFI.|
|Maximum Partition Capacity||MBR can support up to 2 TB disk space.||GPT can support up to 256 TB in Windows.|
|Number of Partitions||MBR can have either 4 primary partitions or 3 primary partitions and 1 logical partition||GPT can have up to 128 partitions in Windows.|
|Windows Support||Windows 7 and earlier can only boot in MBR partition.||Newer Windows can boot in GPT partition in UEFI mode or MBR partition in legacy BIOS mode.|
|Data Security||MBR has no data security built-in and is vulnerable to boot record corruption.||GPT has built-in secondary partition table to recover from primary partition table corruption. It also supports secure boot and cyclic redundancy check.|