Il GUID Partition Table (GPT), in informatica, è uno standard per la definizione della tabella delle partizioni () su una unità di memoria (unità di memoria a stato solido o disco fisso). È parte dello standard Extensible Firmware Interface (EFI). L'EFI utilizza il GPT laddove il BIOS utilizza il Master Boot Record (MBR).
Caratteristiche Mentre il MBR inizia con il Master Boot Code, che contiene un eseguibile che ha lo scopo di identificare e avviare la partizione attiva, il GPT utilizza le potenzialità offerte dall'EFI per realizzare queste funzionalità. Per motivi di protezione e compatibilità l'unità inizia con un riferimento MBR, cui segue il GPT stesso con la tabella delle partizioni.
Il GPT utilizza l'indirizzamento a blocchi logici (LBA, acronimo inglese di Logical block addressing) anziché l'indirizzamento di tipo cilindro-testina-settore (CHS, cylinder-head-sector) utilizzato dal MBR. Le informazioni per la compatibilità con il MBR sono contenute nello LBA 0, l'intestazione GPT si trova nello LBA 1, a cui segue la tabella delle partizioni vera e propria. Nel sistema operativo Windows a 64-bit, vengono riservati 16.384 bytes, o 32 settori per il GPT, lasciando lo LBA 34 come primo settore utilizzabile dell'unità.
Il GPT è ridondante, poiché scrive l'intestazione e la tabella delle partizioni sia all'inizio che alla fine dell'unità.
Compatibilità MBR (LBA 0) Lo scopo principale del MBR all'inizio dell'unità (LBA 0) è quello di evitare alle applicazioni per unità MBR di non riconoscere ed eventualmente sovrascrivere unità GPT. A tale scopo, viene indicata una singola partizione, che comprende l'intera unità GPT. Il System ID per la partizione viene fissato al valore 0xEE, indicando che il sistema usa il GPT. L'EFI ignora il MBR. I sistemi operativi a 32-bit che non gestiscono unità GPT riconoscono questo ID e mostrano all'utente l'unità GPT come inaccessibile. I sistemi operativi più obsoleti in generale riconosceranno sull'unità una singola partizione di tipo sconosciuto, senza spazio libero; in questo modo vengono generalmente rifiutate le modifiche dell'unità, a meno che l'utente non richieda esplicitamente e confermi la cancellazione della partizione. In questo modo, vengono prevenute cancellazioni accidentali dell'unità.
Intestazione della tabella delle partizioni (LBA 1) L'intestazione della tabella delle partizioni (LBA 1) definisce quali blocchi dell'unità sono utilizzabili dall'utente. Definisce inoltre il numero e la dimensione degli elementi della tabella delle partizioni. Su una macchina con Windows Server 2003 a 64-bit, vi sono 128 elementi riservati, ognuno di 128 bytes. Perciò possono essere create al massimo 128 partizioni.
L'intestazione contiene il GUID (Globally Unique Identifier, in inglese) dell'unità. Memorizza la propria dimensione e posizione (sempre LBA 1) e la dimensione e posizione della intestazione e della tabella GPT secondaria (sempre nell'ultimo settore dell'unità). È importante notare che contiene anche una checksum CRC32 per sé e per la tabella delle partizioni, che viene verificata dai processi EFI all'avvio. Poiché l'EFI utilizza e verifica questa checksum, è sconsigliato utilizzare editor esadecimali per modificare il contenuto del GPT, dal momento che queste modifiche potrebbero invalidare la checksum. In questo caso, l'EFI dovrebbe sovrascrivere il GPT primario con il secondario, o, se entrambi contenessero checksum non valide, non sarebbe in grado di accedere all'unità.
Descrizione della partizione (LBA 2-33) Le righe della tabella delle partizioni (LBA 2-33) sono semplici e chiare. Per ogni riga, i primi 16 bytes identificano il GUID del tipo di partizione (un esempio di GUID di un EFI System Partition è {C12A7328-F81F-11D2-BA4B-00A0C93EC93B}), mentre i successivi 16 bytes contengono il GUID univoco della partizione. All'interno di ogni riga sono anche memorizzati i LBA (ognuno di 64 bit) che individuano l'inizio e la fine della partizione considerata, oltre al nome e agli attributi di quest'ultima.
GUID per tipo di partizione Sistema OperativoTipo di partizioneGlobally-Unique Identifier (GUID)(None)Unused entry00000000-0000-0000-0000-000000000000MBR partition scheme024DEE41-33E7-11D3-9D69-0008C781F39FEFI System PartitionC12A7328-F81F-11D2-BA4B-00A0C93EC93BWindowsMicrosoft Reserved PartitionE3C9E316-0B5C-4DB8-817D-F92DF00215AEBasic Data PartitionEBD0A0A2-B9E5-4433-87C0-68B6B72699C7Logical Disk Manager metadata partition5808C8AA-7E8F-42E0-85D2-E1E90434CFB3Logical Disk Manager data partitionAF9B60A0-1431-4F62-BC68-3311714A69ADHP-UXData partition75894C1E-3AEB-11D3-B7C1-7B03A0000000Service PartitionE2A1E728-32E3-11D6-A682-7B03A0000000LinuxData partitionEBD0A0A2-B9E5-4433-87C0-68B6B72699C7RAID partitionA19D880F-05FC-4D3B-A006-743F0F84911ESwap partition0657FD6D-A4AB-43C4-84E5-0933C84B4F4FLogical Volume Manager (LVM) partitionE6D6D379-F507-44C2-A23C-238F2A3DF928Reserved8DA63339-0007-60C0-C436-083AC8230908FreeBSDData partition516E7CB4-6ECF-11D6-8FF8-00022D09712BSwap partition516E7CB5-6ECF-11D6-8FF8-00022D09712BUnix File System (UFS) partition516E7CB6-6ECF-11D6-8FF8-00022D09712BVinum volume manager partition516E7CB8-6ECF-11D6-8FF8-00022D09712BmacOSHierarchical File System (HFS+) partition48465300-0000-11AA-AA11-00306543ECACApple UFS55465300-0000-11AA-AA11-00306543ECACApple RAID partition52414944-0000-11AA-AA11-00306543ECACApple RAID partition, offline52414944-5F4F-11AA-AA11-00306543ECACApple Boot partition426F6F74-0000-11AA-AA11-00306543ECACApple Label4C616265-6C00-11AA-AA11-00306543ECACApple TV Recovery partition5265636F-7665-11AA-AA11-00306543ECACSolarisBoot partition6A82CB45-1DD2-11B2-99A6-080020736631Root partition6A85CF4D-1DD2-11B2-99A6-080020736631Swap partition6A87C46F-1DD2-11B2-99A6-080020736631Backup partition6A8B642B-1DD2-11B2-99A6-080020736631/usr partition6A898CC3-1DD2-11B2-99A6-080020736631/var partition6A8EF2E9-1DD2-11B2-99A6-080020736631/home partition6A90BA39-1DD2-11B2-99A6-080020736631EFI_ALTSCTR6A9283A5-1DD2-11B2-99A6-080020736631Reserved partition6A945A3B-1DD2-11B2-99A6-0800207366316A9630D1-1DD2-11B2-99A6-0800207366316A980767-1DD2-11B2-99A6-0800207366316A96237F-1DD2-11B2-99A6-0800207366316A8D2AC7-1DD2-11B2-99A6-080020736631 Nota: Linux e Windows usano lo stesso GUID per le loro rispettive partizioni dati
Nota: I GUID in questa tabella sono riportati con la convenzione di ordinamento dei byte di tipo little-endian. Per esempio, il GUID per una EFI System partition (Esp) viene qui riportato come C12A7328-F81F-11D2-BA4B-00A0C93EC93B, che corrisponde alla sequenza di 16 bytes 28 73 2A C1 1F F8 D2 11 BA 4B 00 A0 C9 3E C9 3B (solo i primi 3 blocchi hanno i byte invertiti).
Voci correlate Master boot record GUID Extensible Firmware Interface Partizione (informatica)
Altri progetti
Collegamenti esterni Microsoft TechNet: Disk Sectors on GPT Disks Microsoft TechNet: Using GPT Drives on x86-64 Systems
Categoria:Standard informatici Categoria:BIOS