Mapa de particiones de Apple
Apple Partition Map (APM) es un esquema de partición utilizado para definir la organización de bajo nivel de datos en discos formateados para su uso con computadoras Macintosh de 68k y PowerPC. Fue introducido con el Macintosh II.
Los discos que utilizan el mapa de particiones de Apple se dividen en bloques lógicos, y cada bloque suele tener 512 bytes. El primer bloque, Bloque 0, contiene una estructura de datos específica de Apple llamada "Mapa de descriptores de controladores" para que la ROM de Macintosh Toolbox cargue actualizaciones de controladores y parches antes de cargarlos desde una partición MFS o HFS. Debido a que APM permite bloques lógicos de 32 bits, el tamaño histórico de un disco formateado con APM que utiliza bloques pequeños está limitado a 2 TiB.
El Mapa de particiones de Apple asigna todo el espacio utilizado (incluido el mapa) y no utilizado (espacio libre) en el disco, a diferencia del registro de arranque maestro x86 mínimo que solo tiene en cuenta las particiones utilizadas que no son de mapa. Esto significa que cada bloque del disco (con excepción del primer bloque, Bloque 0) pertenece a una partición.
Algunos discos híbridos contienen un descriptor de volumen primario ISO 9660 y un mapa de particiones de Apple, lo que permite que el disco funcione en diferentes tipos de computadoras, incluidos los sistemas Apple.
Macs basados en Intel
Para acceder a volúmenes, se pueden utilizar particiones APM y GPT de forma estándar con Mac OS X Tiger (10.4) y superior. Para iniciar un sistema operativo, los sistemas basados en PowerPC sólo pueden arrancar desde discos APM, mientras que los sistemas basados en Intel generalmente arrancan desde discos GPT. Sin embargo, las Mac más antiguas basadas en Intel pueden arrancar desde APM, GPT (GUID Partition Table) y MBR (Master Boot Record), utilizando la emulación de BIOS llamada EFI-CSM, es decir, el Módulo de soporte de compatibilidad proporcionado por EFI).
Los modelos basados en Intel que venían con Mac OS X Tiger (10.4) o Leopard (10.5) preinstalado tenían que poder arrancar desde discos APM y GPT debido a los medios de instalación para estas versiones universales de Mac OS X, que están particionados en APM para seguir siendo compatibles con los sistemas basados en PowerPC. Sin embargo, la instalación de OS X en una Mac basada en Intel exige un disco particionado GPT o se negará a continuar, de la misma manera que la instalación en un sistema basado en PowerPC exigirá un volumen de destino particionado APM. La clonación de un OS X ya instalado en una partición APM en sistemas Intel seguirá siendo arrancable incluso en Macs basadas en Intel 2011. A pesar de esta aparente compatibilidad con APM, Apple nunca admitió oficialmente el arranque desde un disco APM interno en un sistema basado en Intel. La única excepción para una versión universal de Mac OS X (Tiger o Leopard) es un documento oficial de Apple que describe cómo configurar un disco APM externo de arranque dual para usar con PowerPC e Intel.
Diseño
Cada entrada de la tabla de particiones tiene el tamaño de un bloque de datos, que normalmente es de 512 bytes. Cada entrada de partición en la tabla tiene el tamaño de un bloque o sector de datos. Debido a que la propia tabla de particiones también es una partición, el tamaño de esta primera partición limita el número de entradas a la propia tabla de particiones.
El caso normal es que el Mapa de particiones de Apple utiliza 64 sectores (64 × 512 = 32 KB): un bloque para el Mapa de descriptores de controladores como Bloque 0, un bloque para la propia tabla de particiones y 62 bloques para un máximo de 62 particiones de datos.
Cada entrada de partición incluye el sector inicial y el tamaño, pero también un nombre, un tipo, una posición del área de datos y un posible código de inicio. También incluye el número total de particiones en esa tabla de particiones. Esto garantiza que, después de leer la primera entrada de la tabla de particiones, el firmware sepa cuántos bloques más debe leer del medio para haber procesado cada entrada de la tabla de particiones. Todas las entradas están en orden de bytes big-endian.
Dirección | Tamaño en bytes | Índice | ¿Obligatorio? | |
---|---|---|---|---|
Decimal | Hex | |||
0 | 0x0000 | 1 | (valor ASCII) "P" ) | No |
1 | 0x0001 | 1 | (valor ASCII) "M" ) | No |
2 a 3 | 0x0002 | 2 | reservadas | No |
4 a 7 | 0x0004 | 4 | número de particiones (total) | Sí. |
8 a 11 | 0x0008 | 4 | sector inicial de partición | Sí. |
12 a 15 | 0x000C | 4 | tamaño de la partición (en sectores) | Sí. |
16 a 47 | 0x0010 | 32 | nombre de la partición (fijo ASCII lado derecho NULL acolchado) | No |
48 a 79 | 0x0030 | 32 | tipo de partición (fijo ASCII lado derecho NULL acolchado) | No |
80 a 83 | 0x0050 | 4 | sector inicial del área de datos en partición | No |
84 a 87 | 0x0054 | 4 | tamaño del área de datos en partición (en sectores) | No |
88–91 | 0x0058 | 4 | estado de la partición | No |
92 a 95 | 0x005C | 4 | sector inicial de código de arranque | No |
96–99 | 0x0060 | 4 | tamaño del código de arranque (en bytes) | No |
100–103 | 0x0064 | 4 | dirección del código de arranque | No |
104–107 | 0x0068 | 4 | reservadas | No |
108–111 | 0x006C | 4 | código de inicio | No |
112-115 | 0x0070 | 4 | reservadas | No |
116–119 | 0x0074 | 4 | código de inicio checksum | No |
120–135 | 0x0078 | 16 | tipo de procesador (acolgado NULL de lado derecho ASCII fijo) | No |
136 a 511 | 0x0088 | 376 | reservadas | No |
Identificadores de partición
Tipos que comienzan con "Apple_" están reservados para su asignación por parte de Apple, todos los demás tipos definidos personalizados son de uso gratuito. Sin embargo registro Se recomienda colaborar con Apple.
Identificador / tipo | Contenido / sistema de archivos | Nombre (típico) | Observaciones |
---|---|---|---|
Apple_Boot | cargador de arranque | MOSX_OF3_Booter , eXternal booter | Esta partición de arranque es utilizada por Mac OS X en New World Macs (Open Firmware 3.0 y mayor) cuando el sistema de archivos en la partición principal no es compatible con Open Firmware, como en una configuración RAID de software o cuando se utiliza un sistema de archivos HFS+ sensible a casos o UFS. Contiene BootX en un sistema de archivos HFS. |
Apple_Boot_RAID | cargador de arranque | Raid Partition | |
Apple_Bootstrap | Botón NewWorld | Aunque es una partición de arranque general Open Firmware (New World), es utilizado específicamente por yaboot y GRUB para cargar PowerPC Linux, y no se automontará bajo Mac OS X. Debe ser formateado HFS, para que pueda ser accedido por Open Firmware. | |
Apple_Driver | controlador de dispositivo | Macintosh | Classic Mac Partición de controladores OS |
Apple_Driver43 | SCSI Manager 4.3 controlador de dispositivo | Macintosh | Classic Mac Partición de controladores OS |
Apple_Driver43_CD | Conductor de dispositivo SCSI CD-ROM | Macintosh | Classic Mac Partición de controladores OS |
Apple_Driver_ATA | Conductor del dispositivo ATA | Macintosh | Classic Mac Partición de controladores OS |
Apple_Driver_ATAPI | Conductor del dispositivo ATAPI | Macintosh | Classic Mac Partición de controladores OS |
Apple_Driver_IOKit | I/O Kit controlador | Macintosh | Classic Mac Partición de controladores OS |
Apple_Driver_OpenFirmware | Macintosh | ||
Apple_Extra | no utilizados | Este identificador enmascara una entrada de mapa de partición no utilizada. | |
Apple_Free | espacio libre | Extra | Este identificador máscara espacio libre como entrada de mapa de partición. |
Apple_FWDriver | Conductor de dispositivo FireWire | Macintosh | Classic Mac Partición de controladores OS |
Apple_HFS | Sistema de archivos jerárquicos | Apple_HFS | Si bien normalmente un volumen HFS o HFS+ para Mac OS y Mac OS X, también puede contener un sistema de archivos formato MS-DOS (Cuadro de asignación de archivos, que puede ser accedido por Mac OS y Mac OS X). |
Apple_HFSX | HFS Plus | Esta partición contiene un volumen HFS+ sin un envoltorio HFS. HFSX fue introducido con Mac OS X 10.3 y sólo se utiliza en casos especiales, como el caso sensible HFS+. HFSX es el tipo de partición estándar en Mac basados en Intel (que usan GPT en lugar de APM). | |
Apple_Loader | – | SecondaryLoader | Como Apple_Boot pero en Old World Macs, se utiliza cuando Mac OS X está instalado en un sistema de archivos no legible por Open Firmware. Esta partición no contiene un sistema de archivos, sino que contiene el código de máquina BootX en formato XCOFF. Este tipo de partición fue descontinuado con Mac OS X 10.3.
|
Apple_MDFW | firmware | firmware | Esta partición es utilizada por el iPod para cargar el firmware/OS. |
Apple_MFS | Sistema de archivos Macintosh | Esta partición es utilizada por Mac OS para Sistema de archivos Macintosh (MFS), que se introdujo con el Macintosh 128K en 1984. | |
Apple_partition_map | mapa de partición | Apple | El mapa de partición es también una partición propia. Puede variar en tamaño dependiendo de cuántas particiones pueda contener. |
Apple_Patches | parches | Patch Partition | Mac OS clásica partición del parche |
Apple_PRODOS | ProDOS | Sistema de archivos ProDOS | |
Apple_RAID | RAID | Apple_RAID_OfflineV2 | Este identificador marca una partición Mac OS X utilizada en una configuración RAID de software. Normalmente contiene los mismos sistemas de archivos que una instalación regular Mac OS X tendría, como HFS/HFS+ o UFS. La partición de arranque separada Apple_Boot es obligatorio.
|
Apple_Rhapsody_UFS | Unix File System | Mac OS X Server | Esta partición contiene un Unix File System (UFS) utilizado por el sistema operativo Apple Rhapsody (un nombre de desarrollo que marca la transición de OPENSTEP a Mac OS X) y también es utilizado por Mac OS X Server 1.0 a 1.2 v3. |
Apple_Scratch | vacío | Este identificador marca una partición vacía. | |
Apple_Second | Segundo tramo de arranque | ||
Apple_UFS | Unix File System | Mac OS X | Esta partición contiene un Unix File System (UFS) y es utilizado por Mac OS X, Mac OS X Server (Version 10.0 y más reciente) y varios sistemas operativos similares a Unix. |
Apple_UNIX_SVR2 | A/UX, Unix | Inicialmente introducido para el sistema operativo A/UX (Apple Unix basado en System V Release 2, por lo tanto SVR2) en el 68k, fue más tarde reutilizado para MkLinux que utilizó el Sistema de archivos extendido. Es el identificador de partición estándar para muchos sistemas operativos similares a Unix, incluyendo Linux y NetBSD. Puede contener cualquier sistema de archivos adecuado para el sistema operativo instalado. Si es arrancable, un sistema de archivos que puede ser leído por el cargador de arranque Open Firmware desde Apple_Bootstrap Debe usarse.
| |
Apple_Void | Cobertura ISO9660 | Una entrada de mapa de partición mutilada para asegurar la alineación correcta de partición en los medios de arranque. | |
Be_BFS | Sistema de Archivo | Esta partición contiene un Sistema de Archivo (BFS) y es utilizado normalmente por BeOS. | |
MFS | TiVo Media Sistema de archivos | MFS application region , MFS media region | Se utiliza para mantener el sistema de archivos multimedia patentado en discos duros TiVo formateados usando el Mapa de partición de Apple. |
Estado de la partición
El estado de la partición es un campo de bits compuesto por las banderas:
Valor | Descripción | Sistema |
---|---|---|
0x00000001 | entrada válida | A/UX |
0x00000002 | se asigna | A/UX |
0x00000004 | entrada en uso | A/UX |
0x00000008 | entrada contiene información de arranque | A/UX |
0x00000010 | partición es legible | A/UX |
0x00000020 | partición es escritura | A/UX, Macintosh |
0x00000040 | código de arranque es independiente posición | A/UX |
0x00000100 | partición contiene conductor compatible con cadena | Macintosh |
0x00000200 | partición contiene un controlador real | Macintosh |
0x00000400 | partición contiene un controlador de cadena | Macintosh |
0x40000000 | montaje automático en arranque | Macintosh |
0x80000000 | la partición de inicio | Macintosh |