Карта разделов Apple
Apple Partition Map ( APM ) — это схема разделов , используемая для определения низкоуровневой организации данных на дисках, отформатированных для использования с компьютерами Macintosh 68k и PowerPC . Он был представлен в Macintosh II . [1]
Диски, использующие карту разделов Apple, делятся на логические блоки , каждый из которых обычно занимает 512 байтов. Первый блок, Блок 0 , содержит специфичную для Apple структуру данных под названием «Карта дескрипторов драйвера» для ПЗУ Macintosh Toolbox для загрузки обновлений драйверов и исправлений перед загрузкой из раздела MFS или HFS. [2] Поскольку APM допускает 32-битные логические блоки, исторический размер диска, отформатированного в APM с использованием небольших блоков [3] , ограничен 2 ТиБ . [4]
Partition Map Apple , вырисовывает все пространство , используемое (включая карту) и неиспользуемое (свободное пространство) на диске, в отличии от минимальной x86 основной загрузочной записи , которая учитывает только для используемых разделов без карты. Это означает, что каждый блок на диске (за исключением первого блока, блока 0 ) принадлежит разделу.
Некоторые гибридные диски содержат как дескриптор основного тома ISO 9660, так и карту разделов Apple, что позволяет диску работать на разных типах компьютеров, включая системы Apple.
СОДЕРЖАНИЕ
Mac на базе Intel [ править ]
Для доступа к томам разделы APM и GUID могут использоваться стандартным образом в Mac OS X Tiger (10.4) и выше. Для запуска операционной системы системы на базе PowerPC могут загружаться только с дисков APM [5], тогда как системы на базе Intel обычно загружаются с дисков GUID. [1] [6] [7] Тем не менее, компьютеры Mac на базе Intel могут загружаться из APM, GPT (таблица разделов GUID) и MBR ( основная загрузочная запись , используя эмуляцию BIOS под названием EFI-CSM, т.е. предоставленный модуль поддержки совместимости компании EFI ).
Модели на базе Intel, которые поставлялись с предустановленной Mac OS X Tiger (10.4) или Leopard (10.5), должны были иметь возможность загружаться как с дисков APM, так и с дисков GUID из-за установочного носителя для этих универсальных версий Mac OS X, которые разбиты на APM чтобы оставаться совместимыми с системами на базе PowerPC. [8] Однако для установки OS X на Mac на базе Intel требуется диск с разделами по GUID или будет отказано в продолжении, точно так же, как установка в системе на базе PowerPC потребует целевого тома с разделами APM. Клонированиеуже установленная OS X в разделе APM в системах Intel останется загрузочной даже на компьютерах Mac 2011 года с процессором Intel. Несмотря на эту очевидную поддержку APM, Apple никогда официально не поддерживала загрузку с внутреннего диска APM в системе на базе Intel. Единственным исключением для универсальной версии Mac OS X (Tiger или Leopard) является официальный документ Apple, описывающий, как настроить двойной загрузочный внешний APM-диск для использования с PowerPC и Intel. [9]
Макет [ править ]
Каждая запись в таблице разделов имеет размер одного блока данных, который обычно составляет 512 байт. [1] [10] Каждая запись раздела в таблице имеет размер одного блока или сектора данных. Поскольку сама таблица разделов также является разделом, размер этого первого раздела ограничивает количество записей в самой таблице разделов.
Нормальный случай состоит в том, что 64 сектора (64 × 512 = 32 КБ) используются Apple Partition Map : один блок для карты дескриптора драйвера как блок 0 , один блок для самой таблицы разделов и 62 блока для максимум 62 данных. перегородки. [11]
Каждая запись раздела включает начальный сектор и размер, а также имя, тип, положение области данных и возможный загрузочный код. Он также включает общее количество разделов в этой таблице разделов. [12] Это гарантирует, что после чтения первой записи таблицы разделов микропрограммное обеспечение будет знать, сколько блоков еще нужно прочитать с носителя, чтобы обработать каждую запись таблицы разделов. Все записи в байтовом порядке с прямым порядком байтов. [ необходима цитата ]
Адрес | Размер в байтах | СОДЕРЖАНИЕ | Необходимый? | |
---|---|---|---|---|
Десятичный | Шестигранник | |||
0 | 0x0000 | 1 | подпись1 (значение ASCII "P" ) | Нет |
1 | 0x0001 | 1 | подпись2 (значение ASCII "M" ) | Нет |
2–3 | 0x0002 | 2 | зарезервированный | Нет |
4–7 | 0x0004 | 4 | количество разделов (всего) | да |
8–11 | 0x0008 | 4 | начальный сектор раздела | да |
12–15 | 0x000C | 4 | размер раздела (в секторах) | да |
16–47 | 0x0010 | 32 | имя раздела ( фиксированный ASCII справа с дополнением NULL ) | Нет |
48–79 | 0x0030 | 32 | тип раздела ( фиксированный ASCII справа с заполнением NULL ) | Нет |
80–83 | 0x0050 | 4 | начальный сектор области данных в разделе | Нет |
84–87 | 0x0054 | 4 | размер области данных в разделе (в секторах) | Нет |
88–91 | 0x0058 | 4 | статус раздела | Нет |
92–95 | 0x005C | 4 | начальный сектор загрузочного кода | Нет |
96–99 | 0x0060 | 4 | размер загрузочного кода (в байтах) | Нет |
100–103 | 0x0064 | 4 | адрес кода загрузчика | Нет |
104–107 | 0x0068 | 4 | зарезервированный | Нет |
108–111 | 0x006C | 4 | точка входа загрузочного кода | Нет |
112–115 | 0x0070 | 4 | зарезервированный | Нет |
116–119 | 0x0074 | 4 | контрольная сумма загрузочного кода | Нет |
120–135 | 0x0078 | 16 | тип процессора ( фиксированный ASCII справа с дополнением NULL ) | Нет |
136–511 | 0x0088 | 376 | зарезервированный | Нет |
Идентификаторы разделов [ править ]
Типы, начинающиеся с «Apple_», зарезервированы для назначения Apple, все другие типы, определенные пользователем, можно использовать бесплатно. Однако регистрация в Apple приветствуется.
Идентификатор / тип | Содержимое / файловая система | Имя (типичное) | Замечания |
---|---|---|---|
Apple_Boot | загрузчик | MOSX_OF3_Booter , ВНЕШНИЙ загрузчик | Этот загрузочный раздел используется Mac OS X на компьютерах Mac New World (Open Firmware 3.0 и выше), когда файловая система в основном разделе не поддерживается Open Firmware, например, в конфигурации программного RAID или при использовании HFS + с учетом регистра или файловая система UFS. Он содержит BootX в файловой системе HFS. |
Apple_Boot_RAID | загрузчик | Раздел рейда | |
Apple_Bootstrap | Загрузочный блок NewWorld | Хотя это общий загрузочный раздел Open Firmware ( New World ), он специально используется yaboot . Он должен быть отформатирован в HFS, чтобы к нему можно было получить доступ через Open Firmware. | |
Apple_Driver | драйвер устройства | Macintosh | Раздел с классическими драйверами Mac OS |
Apple_Driver43 | Драйвер устройства SCSI Manager 4.3 | Macintosh | Раздел с классическими драйверами Mac OS |
Apple_Driver43_CD | Драйвер устройства SCSI CD-ROM | Macintosh | Раздел с классическими драйверами Mac OS |
Apple_Driver_ATA | Драйвер устройства ATA | Macintosh | Раздел с классическими драйверами Mac OS |
Apple_Driver_ATAPI | Драйвер устройства ATAPI | Macintosh | Раздел с классическими драйверами Mac OS |
Apple_Driver_IOKit | Драйвер I / O Kit | Macintosh | Раздел с классическими драйверами Mac OS |
Apple_Driver_Open Прошивка | Macintosh | ||
Apple_Extra | неиспользованный | Этот идентификатор маскирует неиспользуемую запись карты разделов. | |
Apple_Free | свободное место | Дополнительный | Этот идентификатор маскирует свободное пространство как запись карты разделов. |
Apple_FWDriver | Драйвер устройства FireWire | Macintosh | Раздел с классическими драйверами Mac OS |
Apple_HFS | Иерархическая файловая система | Apple_HFS | Хотя обычно это том HFS или HFS + для Mac OS и Mac OS X, он также может содержать файловую систему в формате MS-DOS ( таблица размещения файлов , к которой можно получить доступ в Mac OS и Mac OS X). |
Apple_HFSX | HFS Plus | Этот раздел содержит том HFS + без оболочки HFS. HFSX был введен в Mac OS X 10.3 и используется только в особых случаях, например, в HFS + с учетом регистра. HFSX — это стандартный тип раздела на компьютерах Mac на базе Intel (в которых используется GUID вместо APM). | |
Apple_Loader | — | SecondaryLoader | Подобно Apple_Boot, но на Mac Old World , он используется, когда Mac OS X установлена в файловой системе, не читаемой Open Firmware. Этот раздел не содержит файловой системы, вместо этого он содержит BootX машинный код в XCOFF формате. Этот тип разделов больше не поддерживался в Mac OS X 10.3. |
Apple_MDFW | прошивка | прошивка | Этот раздел используется iPod для загрузки прошивки / ОС. |
Apple_MFS | Файловая система Macintosh | Этот раздел используется Mac OS для файловой системы Macintosh (MFS), которая была представлена в Macintosh 128K в 1984 году. | |
Apple_partition_map | карта раздела | яблоко | Карта разделов также является отдельным разделом. Он может различаться по размеру в зависимости от того, сколько разделов он может содержать. |
Apple_Patches | патчи | Патч-раздел | Классический патч- раздел Mac OS |
Apple_PRODOS | ProDOS | Файловая система ProDOS | |
Apple_RAID | RAID | Apple_RAID_OfflineV2 | Этот идентификатор отмечает раздел Mac OS X, используемый в конфигурации программного RAID. Обычно он содержит те же файловые системы, что и обычная установка Mac OS X, например HFS / HFS + или UFS. Отдельный загрузочный раздел Apple_Boot обязателен. |
Apple_Rhapsody_UFS | Файловая система Unix | Сервер Mac OS X | Этот раздел содержит файловую систему Unix (UFS), используемую операционной системой Apple Rhapsody (название разработки, обозначающее переход от OPENSTEP к Mac OS X), а также используется Mac OS X Server 1.0–1.2 v3 . |
Apple_Scratch | пустой | Этот идентификатор отмечает пустой раздел. | |
Яблоко_второй | Загрузчик второй ступени | ||
Apple_UFS | Файловая система Unix | Mac OS X | Этот раздел содержит файловую систему Unix (UFS) и используется Mac OS X, Mac OS X Server (версия 10.0 и новее) и различными Unix-подобными операционными системами. |
Apple_UNIX_SVR2 | A / UX , Unix | Первоначально представленный для A / UX (операционная система Apple Unix, основанная на System V Release 2 , следовательно, SVR2 ) на 68k , позже он был повторно использован для MkLinux, который использовал расширенную файловую систему . Это стандартный идентификатор раздела для многих Unix-подобных операционных систем, включая Linux и NetBSD . Он может содержать любую файловую систему, подходящую для установленной операционной системы. При загрузке необходимо использовать файловую систему, которую может прочитать загрузчик Open Firmware из Apple_Bootstrap (например, yaboot). | |
Apple_Void | ISO9660 обивка | Фиктивная запись карты разделов для обеспечения правильного раздела выравнивания на загрузочном носителе. | |
Be_BFS | Быть файловой системой | Этот раздел содержит файловую систему Be (BFS) и обычно используется BeOS . | |
MFS | Файловая система TiVo Media | МФС область приложения , область МФСА СМИ | Используется для хранения проприетарной файловой системы мультимедиа на жестких дисках TiVo, отформатированных с помощью Apple Partition Map. |
Статус раздела [ править ]
Статус раздела — это битовое поле, состоящее из флагов:
Источник