Registro de arranque extendido - Extended boot record

Un registro de inicio extendido ( EBR ) o un registro de inicio de partición extendido ( EPBR ) es un descriptor de una partición lógica en el sistema común de particiones de unidades de disco DOS. En ese sistema, cuando una (y solo una) entrada de registro de partición en el registro de arranque maestro (MBR) se designa como partición extendida , esa partición se puede subdividir en varias particiones lógicas. La estructura real de esa partición extendida se describe mediante una o más EBR, que se encuentran dentro de la partición extendida. El primer EBR (ya veces el único) siempre estará ubicado en el primer sector de la partición extendida.

A diferencia de las particiones primarias, que se describen todas en una única tabla de particiones dentro del MBR y, por lo tanto, están limitadas en número, cada EBR precede a la partición lógica que describe. Si sigue otra partición lógica, entonces la primera EBR contendrá una entrada que apunta a la siguiente EBR; por lo tanto, múltiples EBR forman una lista vinculada . Esto significa que la cantidad de unidades lógicas que se pueden formar dentro de una partición extendida está limitada solo por la cantidad de espacio en disco disponible en la partición extendida dada.

Mientras que en las versiones de Windows hasta XP, las particiones lógicas dentro de la partición extendida se alinearon siguiendo las convenciones llamadas "geometría de unidad" o "CHS" , desde Windows Vista están alineadas con un límite de 1-MiB. Debido a esta diferencia de alineación, el Administrador de discos lógicos de XP (Administración de discos) puede eliminar estas particiones extendidas sin previo aviso.

Estructura y valores de EBR

Los EBR tienen esencialmente la misma estructura que el MBR; excepto que solo se supone que se deben usar las dos primeras entradas de la tabla de particiones, además de tener la firma de registro de inicio obligatoria (o número mágico ) de 0xAA55 al final del sector. Esta firma de 2 bytes aparece en un editor de disco como 0x55 primero y 0xAA último, porque las PC compatibles con IBM almacenan palabras hexadecimales en orden little-endian (consulte la tabla a continuación).

Estructuras

Estructura común de los registros de arranque extendidos:
Compensaciones dentro de los sectores de EBR Contenido Tamaño
Maleficio dic bytes
000 – 1BD 000 - 445 Generalmente sin usar; normalmente lleno de ceros;
puede contener otro cargador de arranque, es decir, un registro de arranque de partición, por ejemplo, junto con particiones activas avanzadas
446
1BE – 1CD 446 - 461 Primera entrada de la tabla de particiones dieciséis
1CE – 1DD 462 - 477 Segunda entrada de la tabla de particiones dieciséis
1DE – 1ED 478 - 493 Tercera entrada no utilizada llena de ceros dieciséis
1EE – 1FD 494 - 509 Cuarta entrada no utilizada llena de ceros dieciséis
1FE - 1FF 510 - 511 Firma 55AAh en orden de red big-endian , igual que little-endian 0xAA55 . En el disco: 0x55 en el desplazamiento 510 y 0xAA en el desplazamiento 511.
2
EBR, tamaño total: 446 + (4 × 16) +2 = 512

IBM Boot Manager (incluido con los sistemas operativos OS / 2 y algunas versiones anteriores de Partition Magic ) agrega al menos una entrada de 9 bytes (comenzando en el desplazamiento 0x18A ) a cada sector EBR. La entrada consta de un byte de valor de marca (que indica si la partición está en el menú de IBM Boot Manager) seguido de una cadena ASCII de 8 bytes, que es el nombre que se utilizará en el menú. Si la partición no está incluida en el menú de inicio (como particiones de solo datos), el byte de la bandera es cero; en cuyo caso, el siguiente campo de 8 bytes puede contener una representación ASCII del número de sector inicial de esa partición (en hexadecimal).

Estructura de una entrada de tabla de particiones MBR o EBR de 16 bytes:
Compensaciones dentro de la entrada Bytes Descripción
Maleficio dic
1?E 1 0 1 Indicador de arranque (80h para activo; de lo contrario, 00h)
1?F - 1?1  1-3 3 Dirección de sector de culata de cilindro CHS : inicio de partición
1?2 4 1 Código de tipo de partición
1?3 - 1?5  5 - 7 3 Dirección de sector de culata de cilindro CHS : extremo de partición
1?6 - 1?9  8 - 11 4 Dirección del bloque lógico LBA : inicio de partición
1?A - 1?D 12 - 15 4 Tamaño de la partición (en sectores)
1 : Para 1?E leer 1BE o 1CE para obtener el hexadecimal. desplazamiento de la primera o segunda entrada, respectivamente

El tipo de partición de una partición extendida es 0x05 ( direccionamiento CHS ) o 0x0F ( direccionamiento LBA ). DR DOS 6.0 y versiones posteriores aseguraron particiones extendidas usando 0xC5 , que son invisibles para otros sistemas operativos. Dado que las versiones de DR-DOS no habilitadas para LBA hasta la 7.03 incluida no reconocen el tipo de partición 0x0F y otros sistemas operativos no reconocen el tipo 0xC5 , esto también se puede utilizar para ocupar espacio hasta los primeros 8 GB del disco para su uso bajo DR-DOS (para unidades lógicas en particiones seguras o no seguras), y aún usa 0x0F para asignar el resto del disco para sistemas operativos habilitados para LBA de una manera no conflictiva. De manera similar, Linux admite el concepto de una segunda cadena de partición extendida con el tipo 0x85 ; este tipo está oculto (desconocido) para otros sistemas operativos que solo admiten una cadena. Otros tipos de particiones extendidas que pueden contener EBR incluyen los tipos deliberadamente ocultos 0x15 , 0x1F , 0x91 y 0x9B , los tipos de acceso restringido 0x5E y 0x5F , y los tipos seguros 0xCF y 0xD5 . Sin embargo, estos deben tratarse de forma privada para los sistemas operativos y las herramientas que los soportan y no deben montarse de otra manera.

Las direcciones CHS de una partición son difíciles de interpretar sin el conocimiento de la geometría del disco (virtual), porque las traducciones de CHS a LBA se basan en el número de cabezales y el número de sectores por pista. Sin embargo, la dirección de inicio de LBA dada y el tamaño de partición dado en sectores permiten calcular una geometría de disco que coincida con las direcciones de CHS dadas donde sea posible. El direccionamiento CHS con 24 bits siempre usa 6 bits para hasta 63 sectores por pista (1 ... 63), y el acceso al disco INT 13h generalmente usa 8 bits para hasta 256 cabezas (0 ... 255), dejando 10 bits para hasta 1024 cilindros (0 ... 1023). Las direcciones ATA CHS siempre usan 4 bits para hasta 16 cabezales (0 ... 15), esto deja 14 bits para hasta 16383 cilindros ( {{{1}}} ) en traducciones de direcciones CHS ATA-5 de 24 bits.

Valores

Las siguientes son reglas generales que se aplican solo a los valores que se encuentran en los campos de 4 bytes de las entradas de la tabla de particiones de una EBR (véanse las tablas anteriores). Estos valores dependen de las herramientas de particionamiento utilizadas para crearlos o modificarlos y, de hecho, la mayoría de los sistemas operativos que utilizan el esquema de particionamiento extendido (incluidos Microsoft MS-DOS y Windows y Linux) ignoran el valor de "tamaño de partición" en entradas que apuntan a otro sector EBR. Una excepción es que el valor debe ser uno o más para los sistemas operativos Linux.

La primera entrada de una tabla de particiones EBR apunta a la partición lógica que pertenece a esa EBR:

  • Sector inicial = compensación relativa entre este sector EBR y el primer sector de la partición lógica
Nota: Suele ser el mismo valor para cada EBR en el mismo disco duro; generalmente 63 para Windows XP o anterior.
  • Número de sectores = recuento total de sectores para esta partición lógica
Nota: Los sectores no utilizados entre EBR y la unidad lógica no se consideran parte de la unidad lógica.

La segunda entrada de una tabla de particiones EBR contendrá cero bytes si es la última EBR en la partición extendida; de lo contrario, apunta a la siguiente EBR en la cadena EBR.

en otras palabras, el EBR debe tener un tipo de partición válido, al igual que una partición debe tener un tipo de partición válido.
  • Sector de inicio = dirección relativa del próximo EBR dentro de la partición extendida
en otras palabras: Sector de inicio = dirección LBA del próximo EBR menos la dirección LBA del primer EBR de la partición extendida
  • Número de sectores = recuento total de sectores para la siguiente partición lógica, pero el recuento comienza desde el siguiente sector EBR
Nota: A diferencia de la primera entrada en una tabla de particiones de EBR, este número de sectores incluye el sector de EBR de la siguiente partición lógica junto con los otros sectores en su pista que de otro modo no se usaría . (Compare los diagramas 1 y 2 a continuación).
Diagrama 1. A qué apuntan y enumeran los valores de Número inicial y
total de sectores del
primer punto de entrada .
Diagrama 2. A qué se enumeran y enumeran los valores de Número inicial y total
de
sectores del
segundo punto de entrada de una EBR .

Observaciones:
Los diagramas anteriores no están a escala: las delgadas líneas blancas entre cada "EBR" y su "partición" lógica representan el resto de un área no utilizada, generalmente de 63 sectores de longitud; incluido el sector EBR único (mostrado en un tamaño muy exagerado).

En algunos sistemas, puede existir una gran brecha de espacio no utilizado entre el final de una partición lógica y la siguiente EBR, o entre la última partición lógica y el final de toda la partición extendida en sí, si alguna partición lógica creada previamente ha sido eliminada o redimensionado (encogido).

El entrelazado de EBR y particiones que se muestran arriba es típico pero no obligatorio. Es legítimo tener dos o más EBR consecutivas seguidas de dos o más regiones de datos de partición.

Nombrar

Linux y sistemas operativos similares designan los discos duros IDE como /dev/hda para el primer disco duro, /dev/hdb para el segundo disco duro y así sucesivamente. Asimismo, SCSI y en kernels posteriores también se identifican los discos duros IDE y SATA como /dev/sda para el primer disco, etc.

Las hasta cuatro particiones definidas en el registro de inicio maestro se designan como /dev/hda1 ... /dev/hda4 para /dev/hda . La quinta partición en este esquema, por ejemplo /dev/hda5 , corresponde a la primera unidad lógica . La sexta partición /dev/hda6 correspondería entonces a la segunda unidad lógica , o en otras palabras, los contenedores de la partición extendida no se cuentan. Solo la partición extendida más externa definida en el MBR (una de /dev/hda1 ... /dev/hda4 ) tiene un nombre en este esquema.

Ejemplos de

Esto muestra una partición extendida con 6.000 sectores y 3 particiones lógicas.
Observación: Ni una pequeña partición extendida con solo 3 MB ni un disco duro con 20 sectores por pista son realistas, pero estos valores se han elegido para que este ejemplo sea más legible.

06-02-05-EMBR-A.png

Instantánea

El siguiente resultado de una herramienta de línea de comandos muestra el diseño de un disco con dos unidades lógicas. Despojados de los detalles de las particiones FAT y NTFS , la línea anotada con Linux es /dev/hda6 con un sistema de archivos extendido . El comienzo /dev/hda5 muestra que los sistemas operativos involucrados PC DOS 7 , Windows NT y Debian no insisten en una alineación extendida de particiones con un espacio:

 \\.\PHYSICALDRIVE0 (assuming geometry CHS 99999 255 63)  id. [3189-3188]
   MBR CHS     0   0  1 at          0, end     0   0  1, size          1
unused CHS     0   0  2 at          1, end     0   0 63, size         62
1:*06: CHS     0   1  1 at         63, end   260 254 63, size    4192902 bigFAT
2: 05: CHS   261   0  1 at    4192965, end   757 254 63, size    7984305 => EXT
3: 17: CHS   758   0  1 at   12177270, end  1522 254 63, size   12289725 NTFS
4: 1C: CHS  1523   0  1 at   24466995, end  1825 254 63, size    4867695 FAT32
          (extended offset    4192965)                  total   29334690
=> EXT CHS   261   0  1 at          0, end   261   0  1, size          1
5: 06: CHS   261   0  2 at          1, end   384 254 63, size    1992059 bigFAT
6: 05: CHS   385   0  1 at    1992060, end   757 254 63, size    5992245 => EXT
          (extended offset    6185025)                  total    7984305
=> EXT CHS   385   0  1 at          0, end   385   0  1, size          1
unused CHS   385   0  2 at          1, end   385   0 63, size         62
6: 83: CHS   385   1  1 at         63, end   757 254 63, size    5992182 Linux
7: 00: CHS     0   0  0 at          0, end     0   0  0, size          0 unused
                                                        total    5992245

bigFAT CHS     0   1  1 at         63, end   260 254 63, size    4192902
PC DOS 7    (cluster size  64, number      65506)       total    4192902

  NTFS CHS   758   0  1 at   12177270, end  1522 254 63, size   12289725
[1C81-013D] (cluster size   8, number    1536215)       total   12289725

 FAT32 CHS  1523   0  1 at   24466995, end  1825 254 63, size    4867695
[C417-9E22] (cluster size   8, number     607271)       total    4867695

bigFAT CHS   261   0  2 at    4192966, end   384 254 63, size    1992059
FAT SWAP    (cluster size  32, number      62236)       total    1992059

Para ver otro ejemplo, vea el "CÓMO de partición de Linux" .

Notas al pie

Ver también

Referencias

  1. ^ a b c "Conceptos de disco y solución de problemas" . Descripción técnica de los servicios web y de aplicaciones de Windows 2000 . Microsoft Technet. 2000 . Consultado el 19 de julio de 2011 .
  2. ^ "La partición que aloja Windows Vista puede desaparecer si usa Windows XP para crear una partición en una computadora que tiene Windows XP y Windows Vista instalados" . Soporte de Microsoft . 2007-12-02 . Consultado el 29 de agosto de 2015 .
  3. ^ a b "Solución de problemas de discos y sistemas de archivos" . Kit de recursos de Windows XP . Microsoft TechNet . 2005-11-03 . Consultado el 15 de septiembre de 2011 .
  4. a b Andries E. Brouwer (2011). "Lista de identificadores de partición para PC" . Consultado el 19 de julio de 2011 . [0x05 s] admite como máximo discos de 8,4 GB: con el tipo 05 DOS / Windows no utilizará la llamada BIOS extendida, incluso si está disponible. Consulte el tipo 0f a continuación. El uso del tipo 05 para particiones extendidas de más de 8 GB puede provocar daños en los datos con MSDOS.
  5. ^ Andries Brouwer (2004). "Particiones extendidas y lógicas" . CÓMO de disco grande . Consultado el 19 de julio de 2011 .
  6. ^ "ATA-5" (PDF) . T13 / 1321D . INCITS Comité Técnico Interfaces de almacenamiento T10 SCSI. 2000. Archivado desde el original (PDF) el 28 de julio de 2011 . Consultado el 30 de julio de 2011 .
  7. ^ Juergen Haas. "Particiones extendidas" . linux.about.com . Consultado el 19 de julio de 2011 .
  8. ^ Anthony Lissot (2005). "Particionamiento con fdisk" . Partición de Linux HOWTO Revisión 3.5 . Consultado el 19 de julio de 2011 .