аббр. GPT — стандарт формата размещения таблиц разделов на физическом жестком диске. Он является частью Расширяемого микропрограммного интерфейса (англ. Extensible Firmware Interface, EFI) — стандарта, предложенного Intel на смену отжившего BIOS, одного из последних реликтов первозданной IBM PC. EFI использует GPT там, где BIOS использует Главную загрузочную запись (англ. Master Boot Record, MBR).
На этом рисунке приведена диаграмма, схематично поясняющая формат GUID
Partition Table. Каждый логический блок (LBA) имеет размер ровно 512
байт. Отрицательные адреса логических блоков говорят о том, что их
нумерация начинается с конца тома (диска), причем последний адресуемый
блок имеет адрес −1.
В отличие от MBR, которая начинается с исполняемой двоичной
программы, призванной идентифицировать и загрузить активный раздел, GPT
опирается на расширенные возможности EFI для осуществления этих
процессов. Однако MBR присутствует в самом начале диска (блок LBA 0) как
для защиты, так и в целях совместимости. Собственно GPT начинается с Оглавления таблицы разделов (англ. Partition Table Header).
GPT использует современную систему адресации логических блоков (LBA)
вместо применявшейся в MBR адресации «Цилиндр — Головка — Сектор»
(CHS). Доставшаяся по наследству MBR со всей своей информацией
содержится в блоке LBA 0, оглавление GPT — в блоке LBA 1, далее сама
таблица разделов. В случае 64-битной версии ОС Microsoft Windows NT,
за GPT зарезервировано 32 сектора или 16 384 байта (при использовании
сектора размером 512, а не 4 096 байт), так что первым используемым
сектором каждого жёсткого диска в ней будет блок LBA 34.
Кроме того, GPT обеспечивает дублирование — оглавление и таблица разделов записаны как в начале, так и в конце диска.
Теоретически, GPT позволяет создавать разделы диска размером до 9,4 ЗБ (9,4 × 1021 байт), в то время как MBR может работать только с 2,2 ТБ (2,2 × 1012 байт).
[править] Наследственный MBR (LBA 0)
Основная цель помещения MBR в начало диска чисто защитная.
MBR-ориентированные дисковые утилиты могут не распознать и даже
переписать GPT диски. Чтобы избежать этого, указывается наличие всего
одного раздела, охватывающего весь GPT диск. Системный идентификатор (англ. System ID) для этого раздела устанавливается в значение 0xEE ,
указывающее, что применяется GPT. Вследствие этого EFI игнорирует MBR.
Некоторые 32-битные операционные системы, не приспособленные для чтения
дисков содержащих GPT, тем не менее распознают этот Системный идентификатор
и представляют том в качестве недоступного GPT диска. Более старые ОС
обычно представляют диск, как содержащий единственный раздел
неизвестного типа и без свободного места; как правило, они отказываются
модифицировать такой диск, пока пользователь явно не потребует и не
подтвердит удаление данного раздела. Таким способом предотвращается
случайное стирание содержимого GPT диска.
[править] Оглавление таблицы разделов (LBA 1)
Оглавление таблицы разделов указывает те логические блоки на диске, которые могут быть задействованы пользователем (англ. the usable blocks).
Оно также указывает число и размер записей данных о разделах,
составляющих таблицу разделов. Так на машине с установленной 64-битной
ОС Microsoft Windows Server 2003,
зарезервировано 128 записей данных о разделах, каждая запись длиной 128
байт. Таким образом возможно создание 128 разделов на диске.
Оглавление содержит GUID (англ. Globally Unique IDentifier —
Глобально Уникальный Идентификатор) диска. В нём записан свой
собственный размер и местоположение (всегда блок LBA 1), а также размер и
местоположение вторичного (запасного) оглавления и таблицы разделов,
которые всегда размещаются в последних секторах диска. Важно, что он
также содержит контрольную сумму CRC32
для себя и для таблицы разделов. Эти контрольные суммы проверяются
процессами EFI при загрузке машины. Из-за проверок контрольных сумм
невозможным становится применение шестнадцатеричных редакторов для
модификации содержимого GPT. Всякое редактирование изменит контрольные
суммы, после чего EFI перезапишет первичный GPT вторичным. Если же оба
GPT будут содержать неверные контрольные суммы, доступ к диску станет
невозможным.
[править] Записи данных о разделах (LBA 2-33)
Записи данных о разделах (англ. Partition entries)
просты и и расположены с равным приращением адресов. Первые 16 байт
определяют GUID типа раздела. Например, GUID системного EFI-раздела
имеет вид «C12A7328-F81F-11D2-BA4B-00A0C93EC93B ». Следующие
16 байт содержат GUID, уникальный для данного конкретного раздела.
Далее записываются данные о начале и конце 64-битных LBA, если они
имеются. Остальное место отводится информации об именах и атрибутах
разделов.
[править] Идентификаторы (GUIDs) различных типов разделов
Ассоц. платф. |
Тип раздела |
Глобально уникальный идентификатор (GUID) |
(Нет) |
Неиспользуемая запись данных |
00000000-0000-0000-0000-000000000000 |
Схема разделов MBR |
024DEE41-33E7-11D3-9D69-0008C781F39F |
Системный раздел EFI |
C12A7328-F81F-11D2-BA4B-00A0C93EC93B |
Windows |
Резервный раздел Microsoft |
E3C9E316-0B5C-4DB8-817D-F92DF00215AE |
Раздел основных данных |
EBD0A0A2-B9E5-4433-87C0-68B6B72699C7 |
Менеджер логических томов, раздел мета-данных |
5808C8AA-7E8F-42E0-85D2-E1E90434CFB3 |
Менеджер логических томов, раздел данных |
AF9B60A0-1431-4F62-BC68-3311714A69AD |
HP-UX |
Раздел данных |
75894C1E-3AEB-11D3-B7C1-7B03A0000000 |
Раздел Сервиса |
E2A1E728-32E3-11D6-A682-7B03A0000000 |
Linux |
Раздел данных |
EBD0A0A2-B9E5-4433-87C0-68B6B72699C7 |
RAID раздел |
A19D880F-05FC-4D3B-A006-743F0F84911E |
Своп-раздел |
0657FD6D-A4AB-43C4-84E5-0933C84B4F4F |
Раздел Менеджера логических томов (LVM) |
E6D6D379-F507-44C2-A23C-238F2A3DF928 |
Зарезервировано |
8DA63339-0007-60C0-C436-083AC8230908 |
FreeBSD |
Загрузочный раздел |
83BD6B9D-7F41-11DC-BE0B-001560B84F0F |
Раздел данных |
516E7CB4-6ECF-11D6-8FF8-00022D09712B |
Своп-раздел |
516E7CB5-6ECF-11D6-8FF8-00022D09712B |
Раздел UFS (Unix File System) |
516E7CB6-6ECF-11D6-8FF8-00022D09712B |
Раздел менеджера томов Vinum |
516E7CB8-6ECF-11D6-8FF8-00022D09712B |
Раздел ZFS |
516E7CBA-6ECF-11D6-8FF8-00022D09712B |
Mac OS X |
Раздел HFS+ (Hierarchical File System) |
48465300-0000-11AA-AA11-00306543ECAC |
Apple UFS |
55465300-0000-11AA-AA11-00306543ECAC |
ZFS |
6A898CC3-1DD2-11B2-99A6-080020736631 |
Apple RAID раздел |
52414944-0000-11AA-AA11-00306543ECAC |
Apple RAID раздел, offline |
52414944-5F4F-11AA-AA11-00306543ECAC |
Загрузочный раздел Apple |
426F6F74-0000-11AA-AA11-00306543ECAC |
Apple Label |
4C616265-6C00-11AA-AA11-00306543ECAC |
Apple TV Recovery partition |
5265636F-7665-11AA-AA11-00306543ECAC |
Solaris |
Загрузочный раздел |
6A82CB45-1DD2-11B2-99A6-080020736631 |
Корневой раздел |
6A85CF4D-1DD2-11B2-99A6-080020736631 |
Своп раздел |
6A87C46F-1DD2-11B2-99A6-080020736631 |
Backup-раздел |
6A8B642B-1DD2-11B2-99A6-080020736631 |
Раздел /usr |
6A898CC3-1DD2-11B2-99A6-080020736631 |
Раздел /var |
6A8EF2E9-1DD2-11B2-99A6-080020736631 |
Раздел /home |
6A90BA39-1DD2-11B2-99A6-080020736631 |
EFI_ALTSCTR |
6A9283A5-1DD2-11B2-99A6-080020736631 |
Зарезервированные разделы |
6A945A3B-1DD2-11B2-99A6-080020736631 |
6A9630D1-1DD2-11B2-99A6-080020736631 |
6A980767-1DD2-11B2-99A6-080020736631 |
6A96237F-1DD2-11B2-99A6-080020736631 |
6A8D2AC7-1DD2-11B2-99A6-080020736631 |
Примечание 1: GUID для Linux является дубликатом GUID для Microsoft Windows .
Примечание 2: Порядок записи байтов в написаниях GUID является little-endian.
К примеру, GUID системного раздела EFI записан как:
C12A7328-F81F-11D2-BA4B-00A0C93EC93B, что соответствует
последовательности 16 байтов: 28 73 2A C1 1F F8 D2 11 BA 4B 00 A0 C9 3E
C9 3B. Обратите внимание, что байты пишутся задом наперед только в
первых трех блоках (C12A7328-F81F-11D2).
Источник: http://ru.wikipedia.org/wiki/%D0%A2%D0%B0%D0%B1%D0%BB%D0%B8%D1%86%D0%B0_%D1%80%D0%B0%D0%B7%D0%B4%D0%B5%D0%BB%D0%BE%D0%B2 |