GUIDパーティションテーブル

GUIDパーティションテーブル(GPT)とは



GUIDパーティションテーブル(GPT)は、ハードディスクドライブ(HDD)やソリッドステートドライブ(SSD)などのストレージデバイスにおけるパーティションテーブルの配置を定める、比較的新しい標準規格です。従来のMBR(マスターブートレコード)方式に代わるものとして、インテルが提唱するEFI(Extensible Firmware Interface)の一部として導入されました。

MBRの限界とGPTの必要性



従来のMBR方式では、ディスクの容量が最大2TiB(テラバイト)までしか認識できませんでした。しかし、近年のHDDの大容量化に伴い、2TiBを超えるストレージを扱う必要性が高まりました。そこで登場したのがGPTです。GPTでは最大8ZiB(ゼタバイト)という、事実上無制限とも言える領域を管理することが可能です。

2013年頃から、PC向けの大容量HDDが2TiBを超えるものが増え始め、GPTの導入は必須となりました。マザーボードのROM内などのシステムソフトウェアがEFIに対応したことも、GPTの普及を後押ししました。

GPTの仕組み



MBRがマスターブートコード(ブートローダー)で始まるのに対し、GPTはEFIの拡張機能を使ってブート処理を行います。MBRのエントリがディスクの保護と互換性維持の目的であるのに対し、GPTはパーティションテーブル・ヘッダーとしての役割を担っています。

GPTは、ディスク内の位置をLogical Block Addressing (LBA) で指定します。MBRではCHS(シリンダー、ヘッド、セクター)という方式を使っていました。

古いMBRの情報はLBA 0にあり、GPTヘッダーはLBA 1に置かれ、その後にパーティションテーブルが続きます。Windowsでは、16,384バイト(16KiB)がGPT用に予約されており、LBA 34から通常の領域として使用できます。

GPTは、冗長性も考慮されています。GPTヘッダーとパーティションテーブルは、ディスクの先頭と末尾の両方に書き込まれます。

GPTにおけるMBRの役割



GPTを使用するディスクにもMBRが存在します。これは、MBRを前提としたディスクユーティリティが、GPTディスクを誤って「中身がない」と判断してしまうことを防ぐためのものです。MBRには、ディスク全体がひとつのパーティションであるという情報が記述されます。

GPTのパーティション識別子は、システムIDとして `0xEE` が設定され、GPTを使用していることを示します。ただし、両方のパーティションテーブルに有効な値を設定し、それをハイブリッドMBRと呼ぶこともあります。しかし、これは標準化されていない実装であり、OSによって扱いが異なります。Windowsベースのシステムでは、GPTをサポートしていても、有効なMBRが存在する場合はそちらが優先されることがあります。

パーティションテーブル・ヘッダー (LBA 1)



パーティションテーブル・ヘッダーは、ユーザーが使用可能なディスクの範囲、パーティションエントリの数とサイズを定義します。Windowsマシンでは、128個のパーティションエントリ(各128バイト)が用意されており、最大128個のパーティションを作成できます。

ヘッダーには、ディスクのGUID(Globally Unique Identifier)や、ヘッダー自身のサイズと位置、第二GPTヘッダーのサイズと位置が記録されます。また、ヘッダーのCRC32チェックサムも含まれています。このチェックサムが不正になると、EFIは第二GPTを第一GPTにコピーします。第二GPTも不正だった場合は、ディスクにアクセスできなくなります。

パーティションエントリ (LBA 2〜33)



パーティションエントリは、パーティションの種類を表すGUID、パーティション固有のGUID、パーティションの最初のLBA、パーティションの最後のLBA、パーティション名と属性などの情報を含んでいます。例えば、EFIシステムパーティションのGUIDは `{C12A7328-F81F-11D2-BA4B-00A0C93EC93B}` です。

OSのサポート



UNIX/Unix系OS


多くのUNIX/Unix系OSはGPTをサポートしています。

Windows


32ビット版

以前の32ビット版Windowsでは、2TiB以上の容量のディスクやGPT自体を扱えない問題がありました。しかし、Vista以降の32ビット版Windowsでは、この問題は修正されています。

64ビット版

IA-64版とx86-64版の両方でGPTがサポートされています。IA-64アーキテクチャのOSでは、当初からEFIとGPTからの起動をサポートしています。

パーティションの型を表すGUID



GPTでは、パーティションの種類をGUIDで表します。これにより、様々な種類のパーティションを柔軟に管理できます。

まとめ



GPTは、大容量ストレージを効率的に管理するための重要な規格です。従来のMBR方式の制限を克服し、より柔軟で信頼性の高いパーティション管理を実現しています。近年のパソコンではGPTが広く採用されており、現代のストレージ技術において不可欠な要素となっています。

関連事項



マスターブートレコード (MBR)
GUID
Unified Extensible Firmware Interface (UEFI)

外部リンク



GUID パーティション テーブル (マイクロソフト社のWebサイトにある説明)

もう一度検索

【記事の利用について】

タイトルと記事文章は、記事のあるページにリンクを張っていただければ、無料で利用できます。
※画像は、利用できませんのでご注意ください。

【リンクついて】

リンクフリーです。