What Is GPT or GUID Partition Table

GUID Partition Table (GPT) refers to the unique identifier partition table. It is a part of the United Extensive Firmware Interface standard (Unified EFI Forum proposed replacement for the PC BIOS), and used to replace master boot record (MBR) partition table which is in BIOS and uses 32 bits to save logical block address and size. (View MBR VS GPT to know their difference)

Here, in order to break of the limitation that MBR partition table is unable to support over 2 TB partition, some hard disk manufactures like Seagate and Western Digital upgrade their sector capacity to 4KB. Therefore, MBR is able to support 16 TB. However, this way will cause another new problem: how to perfectly divide disk partitions for devices which have large blocks.

As of 2010, most operating systems support GPT. However, some operating systems like Mac OS X and Microsoft Windows can only boot from GPT partitions on the base of EFI firmware.

Feature

In MBR hard disk, the partitioning information is stored in the master boot record. In a GPT, the location information of partition tables is stored in the GPT header. However, for compatibility reasons, the first sector of the disk is reserved for a “protective MBR”, and the next is the GPT header.

Like modern MBR, GPT also uses the logical block addressing (LBA) to replace the historical cylinder-head-sector addressing. The legacy MBR is stored in LBA 0, and the GPT header is contained in LBA 1, and the next is the partition table. 64 bit operating system uses 16,384 bytes (or 32 sectors) as the GPT partition table, and the LBA 34 is the first usable sector on the disk.

Apple Inc. had warned that please do not assume that all blocks are 512 bytes. Some modern storage devices like SSD may have employed 1024 sector, while some magneto-optical disks (MO) may have 512-byte sectors (MO is always not partitioned).

Macintoshes which employ Intel-based structures also use GPT.

Furthermore, there is a copy of partition table at the end of GPT disk.

Partition Method

A big advantage of GPT partition is that it can create different partitions according to different data and create different permission for different partitions. And users cannot copy the whole GPT disk, thus ensuring data security. But, if users Convert MBR disk to GPT, all disk data will be lost if they do not find a good solution. Therefore, users need to backup the hard disk before converting, and then convert it to GPT partition scheme via Windows built-in disk management tool. After conversion, they can install operating system.

Legacy MBR (LBA 0)

Traditionally, at the beginning of GPT partition table, there is still stored a legacy MBR which can help to prevent MBR-based disk utilities from misrecognizing and overwriting GPT disk. This sector is referred to as a “protective MBR”. In the operating system which supports GPT-based boot, the first sector is also used to store the first stage of the boot code. There is a partition typed wit 0xEE in the protective MBR, which indicates the disk employs GUID partition table. Operating systems which cannot read GPT disks will regard the partition as unknown and will refuse to modify the disk unless users delete this partition, which minimizes accidental deletion. In addition, the operating system which can read GPT disk will check partition table in the protective MBR, and if the partition type is not OxEE or if there are multiple items on the partition table, the OS will refuse to manipulate the hard disk, too.

If users are using the MBR/GPT hybrid hard disk partition table, they can boot the OS which doesn't support GPT-based boot from MBR. But, after booting, the OS can only manipulate MBR partition. Boot Camp uses this way to boot Windows.

GPT

Partition Table Header

The partition table header defines the available space on hard disk as well as the number and size of the partition table entries. If users run computer with 64 bit Windows Server 2003, they can create up to 128 partitions, so the partition table contains 128 items and each of them takes up 128 bytes. (The EFI requires that the smallest partition table must have16,384 bytes, thus there are 128 partition entries reserved, each 128 bytes long.)

Primary partition table header is located in the second sector (LBA 1), and the backup partition table header is located in the last sector of the hard disk.