GPT 方式

UEFI から読み込むことのできるパーティション形態です. GPT ヘッダとエントリ配列からなるパーティションテーブルをバックアップも含めて保持し, EFI System Partition に格納した BootCode から起動する形で管理されます.

構造

GPT ヘッダ

GPT のパーティションテーブルは第 2 セクタから格納されます. 1 第 2 セクタには GPT ヘッダが格納されます.

offsetbyte 数内容
Signature08ASCII の 8 文字 “EFI PART” 固定
Revision84ヘッダのリビジョン
Header Size124GPT ヘッダのサイズ
Header CRC32164GPT ヘッダのチェックサム
-204予約スペース. ゼロ埋め
Current LBA248GPT ヘッダの格納されている LBA
Backup LBA328GPT ヘッダのバックアップの格納されている LBA
LBA of first usable408最初の利用可能な LBA
LBA of last usable488最後の利用可能な LBA
Disk GUID5616Disk の UUID
LBA of first entry728最初のパーティションテーブルエントリの格納されている LBA
Number of entries804パーティションテーブルエントリの数
Size of entries844パーティションテーブルエントリのサイズ (128)
Entries CRC32884パーティションテーブルエントリのチェックサム

パーティションテーブルエントリ

パーティションテーブルエントリは GPT ヘッダに記録されている通りの LBA に, 規定の構造で格納されます.

offsetbyte 数内容
Partition Type016パーティションの type の UUID. エントリが利用されていない場合は 0
Partition GUID1616パーティション自体の UUID
Start of Partition328パーティションの開始 LBA
End of Partition408パーティションの終了 LBA
Attributes488UEFI により予約された属性 bit
Partition Name5672パーティション名

仕様上は GPT ヘッダの指定によりパーティションテーブルエントリのサイズを 128 * 2n バイトまで拡張できますが, 拡張した領域は現状ではエントリの格納時にゼロ埋めされ特に効力は持ちません.

PMBR

GPT 方式の場合, MBR のみしかサポートしていない機体で読み込まれた場合に, その機体によってパーティションが不当に読み込まれたり, 破壊されたりするのを避ける必要があります. この対策に向けて, 最初のセクタにはダミーとなる領域のみを指し示すように調整された Protective な MBR が差し込まれています.2

MBR 同様の構成を取り, 次のただ一つのみのパーティションテーブルがダミーとして記録されている状態となります.

offsetbyte 数内容
Boot indicator010x00. これ以外の値の場合, BIOS 等での挙動は未定義
Start of partition (CHS)130x000200.
Type410xEE (GPT Protective)
End of partition (CHS)53最終 CHS または 0xFFFFFF
Start of partition (LBA)840x00000001
Size of partition (LBA)124ディスクサイズ - 1 または 0xFFFFFFFF

制約

MBR と異なり, ヘッダとテーブルは分かれており, 1 セクタ内に収める制約も撤廃されているため, パーティション作成数上限はかなりゆるくなります.

ヘッダ上は 4 byte で表現可能な数までであれば格納可能であり, 理論上は 2^32 - 1 個までパーティションを作成できます. とはいえ一般的には最大 128 パーティションまでとされます. これは UEFI の仕様として, GPT パーティションのテーブルエントリの格納のための最小バイト数が 16,384 byte であることに起因します. 16,384 / 128 = 128 であり, UEFI の定める仕様にしたがって最小限にのみ領域を確保した場合の上限が 128 パーティションとなります.

参考文献
  1. GUID Partition Table Disk Layout - GUID Partition Table (GPT) Disk Layout

  2. GUID Partition Table Disk Layout - Protective MBR