Registro de arranque extendido

Tabla de particiones subsidiarias en el esquema de particionamiento MBR

Un registro de arranque extendido ( EBR ), [1] o registro de arranque de partición extendida ( EPBR ), [nota 1] es un descriptor para una partición lógica bajo el sistema común de particionamiento 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 , entonces esa partición se puede subdividir en varias particiones lógicas. La estructura real de esa partición extendida se describe mediante uno o más EBR, que se encuentran dentro de la partición extendida. El primer EBR (y a 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 mediante 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. [nota 2] Si sigue otra partición lógica, entonces la primera EBR contendrá una entrada que apunta a la siguiente EBR; por lo tanto, varias EBR forman una lista enlazada . [nota 3] 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 de disco disponible en la partición extendida dada. [nota 4]

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

Estructura y valores del EBR

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

Estructuras

Estructura común de los registros de arranque extendidos:
Compensaciones dentro de los sectores del EBRContenidoTamaño
MaleficioDicbytes
000 – 1BD000 – 445Generalmente no se utiliza; normalmente se llena con 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 – 1CD446 – 461Primera entrada de la tabla de particiones16
1CE – 1DD462 – 477Segunda entrada de la tabla de particiones16
1DE – 1ED478 – 493No utilizado [3] tercera entrada llena de ceros16
1EE – 1FD494 – 509No utilizado [3] cuarta entrada llena de ceros16
1FE - 1FF510 - 511Firma 55AAh en orden de red big-endian , igual que 0xAA55 little-endian . 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 ) añade al menos una entrada de 9 bytes (que comienza en el desplazamiento 0x18A ) a cada sector EBR. La entrada consta de un byte de valor de indicador (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 arranque (como las particiones de solo datos), el byte de indicador 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:
CompensacionesDentro de la entradaBytesDescripción
MaleficioDic
1?E101Indicador de arranque (80 h para activo; de lo contrario, 00 h)
1?F - 1?1 1 – 33Dirección del sector de la culata del cilindro CHS : inicio de la partición
1?241Código de tipo de partición
1?3 - 1?5 5 – 73Dirección del sector de la culata del CHS : extremo de la partición
1?6 - 1?9 8 – 114Dirección de bloque lógico LBA : inicio de partición
1?A - 1?D12 – 154Tamaño de la partición (en sectores)
1 : Para 1?Eleer 1BEu 1CEobtener el desplazamiento hexadecimal 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 ). [4] DR DOS 6.0 y versiones posteriores admiten particiones extendidas seguras utilizando 0xC5 , que son invisibles para otros sistemas operativos. Dado que las versiones no habilitadas para LBA de DR-DOS 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 así usar 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. [5] 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 como privados para los sistemas operativos y las herramientas que los respaldan y no deben montarse de otra manera.

Las direcciones CHS de una partición son difíciles de interpretar sin conocer 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 LBA dada y el tamaño de partición dado en sectores permiten calcular una geometría de disco que coincida con las direcciones CHS dadas cuando esto sea posible. El direccionamiento CHS con 24 bits siempre utiliza 6 bits para hasta 63 sectores por pista (1...63), y el acceso al disco INT 13h generalmente utiliza 8 bits para hasta 256 cabezales (0...255), dejando 10 bits para hasta 1024 cilindros (0...1023). Las direcciones CHS ATA siempre utilizan 4 bits para hasta 16 cabezales (0...15), esto deja 14 bits para hasta 16,383 cilindros ( {{{1}}} ) en las traducciones de direcciones CHS ATA-5 de 24 bits. [6]

Valores

Las siguientes son reglas generales que se aplican únicamente a los valores que se encuentran en los campos de 4 bytes de las entradas de la tabla de particiones de un EBR (consulte 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 las entradas que apuntan a otro sector EBR. Una excepción es que el valor debe ser uno o mayor para los sistemas operativos Linux.

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

  • Sector inicial = desplazamiento relativo entre este sector EBR y el primer sector de la partición lógica
Nota: Este suele ser el mismo valor para cada EBR en el mismo disco duro; normalmente 63 para Windows XP o anterior.
  • Número de sectores = recuento total de sectores para esta partición lógica
Nota: Cualquier sector no utilizado entre EBR y la unidad lógica no se considera parte de la unidad lógica. [1]

La segunda entrada de una tabla de partición EBR contendrá cero bytes si es el último EBR en la partición extendida; de lo contrario, apunta al 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 inicial = dirección relativa del próximo EBR dentro de la partición extendida
en otras palabras: Sector inicial = dirección LBA del siguiente EBR menos 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 la tabla de particiones de un EBR, este recuento de sectores incluye el sector EBR de la siguiente partición lógica junto con los demás sectores en su pista que de otro modo no se utilizaría . (Compare los diagramas 1 y 2 a continuación).

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 [nota 2] de longitud; incluido el único sector EBR (mostrado en un tamaño muy exagerado).

En algunos sistemas, puede existir un gran espacio sin utilizar entre el final de una partición lógica y la próxima EBR, o entre la última partición lógica y el final de toda la partición extendida, si alguna partición lógica creada previamente ha sido eliminada o redimensionada (reducida).

La intercalación de EBR y particiones que se muestra arriba es habitual, pero no obligatoria. Es legítimo tener dos o más EBR consecutivos seguidos de dos o más regiones de datos de partición.

Nombramiento

Linux y sistemas operativos similares designan los discos duros IDE/dev/hda como primer disco duro, /dev/hdbsegundo disco duro, etc. Asimismo, en SCSI y en núcleos posteriores, los discos duros IDE y SATA se identifican como /dev/sdaprimer disco, etc.

Las hasta cuatro particiones definidas en el registro de arranque maestro se designan como /dev/hda1... /dev/hda4para /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/hda6correspondería entonces a la segunda unidad lógica , o en otras palabras, los contenedores de particiones extendidas 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. [7]

Ejemplos

Esto muestra una partición extendida con 6000 sectores y 3 particiones lógicas.
Observación: Ni una partición extendida pequeña 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.

Instantánea

La siguiente salida de una herramienta de línea de comandos [ which? ] muestra la disposición de un disco con dos unidades lógicas. Se eliminan los detalles de las particiones FAT y NTFS , la línea anotada con Linux tiene /dev/hda6un sistema de archivos extendido . El comienzo de /dev/hda5muestra que los sistemas operativos involucrados PC DOS 7 , Windows NT y Debian no insisten en ninguna alineación de partición extendida con un espacio:

\\.\PHYSICALDRIVE0 (asumiendo geometría CHS 99999 255 63) id. [3189-3188] MBR CHS 0 0 1 en 0, final 0 0 1, tamaño 1CHS sin usar 0 0 2 en 1, final 0 0 63, tamaño 621:*06: CHS 0 1 1 en 63, fin 260 254 63, tamaño 4192902 bigFAT2:05: CHS 261 0 1 en 4192965, final 757 254 63, tamaño 7984305 => EXT3: 17: CHS 758 0 1 en 12177270, final 1522 254 63, tamaño 12289725 NTFS4: 1C: CHS 1523 0 1 en 24466995, final 1825 254 63, tamaño 4867695 FAT32 (desplazamiento extendido 4192965) total 29334690=> EXT CHS 261 0 1 en 0, fin 261 0 1, tamaño 15:06: CHS 261 0 2 en 1, final 384 254 63, tamaño 1992059 bigFAT6:05: CHS 385 0 1 en 1992060, final 757 254 63, tamaño 5992245 => EXT (desplazamiento extendido 6185025) total 7984305=> EXT CHS 385 0 1 en 0, fin 385 0 1, tamaño 1CHS 385 0 2 sin usar en 1, extremo 385 0 63, tamaño 626:83: CHS 385 1 1 en 63, final 757 254 63, tamaño 5992182 Linux7:00: CHS 0 0 0 en 0, fin 0 0 0, tamaño 0 sin usar total 5992245bigFAT CHS 0 1 1 a las 63, final 260 254 63, tamaño 4192902PC DOS 7 (tamaño de clúster 64, número 65506) total 4192902 NTFS CHS 758 0 1 en 12177270, final 1522 254 63, tamaño 12289725[1C81-013D] (tamaño del grupo 8, número 1536215) total 12289725 FAT32 CHS 1523 0 1 en 24466995, final 1825 254 63, tamaño 4867695[C417-9E22] (tamaño del grupo 8, número 607271) total 4867695bigFAT CHS 261 0 2 en 4192966, final 384 254 63, tamaño 1992059FAT SWAP (tamaño de clúster 32, número 62236) total 1992059

Para ver otro ejemplo, consulte el "CÓMO de partición de Linux" . [8]

Notas al pie

  1. ^ Este término lo utilizan los programas de software de diagnóstico de PowerQuest (ahora Symantec ), como su utilidad PartitionInfo (incluida con Partition Magic ), cuando se muestra información de partición extendida.
  2. ^ ab El EBR se encuentra en el primer sector de un área que no se utiliza y que es igual a la cantidad de sectores por pista; normalmente, 63 sectores. En este sentido, cada partición lógica imita la disposición de la estructura de un disco duro para su primera partición primaria, ya que el MBR se encuentra en el primer sector del disco, el primer sector de la pista 0 (normalmente seguido de 62 sectores no utilizados) y luego el sector de arranque de su primera partición primaria.
  3. ^ Por lo tanto, cualquier sistema operativo o programa de utilidad que deba acceder o enumerar todas las particiones de unidades lógicas, debe seguir esta cadena de entradas hasta que se haya leído el último EBR, que contiene solo una entrada.
  4. ^ En la mayoría de los sistemas operativos DOS y anteriores de Windows, la cantidad de unidades lógicas en una partición extendida estaba limitada a 23, porque el programa FDISK no podía crear más unidades de las que podía asignar una letra de unidad; por lo tanto, suponiendo que C: es una unidad principal, las letras de unidad DOS D: a Z: permiten solo 23 unidades más. Esta limitación no existe en DR-DOS FDISK, ya que no asocia particiones con letras de unidad (excepto particiones primarias). Las características avanzadas como volúmenes seguros o comprimidos y soporte multiplataforma dan como resultado reglas de asignación de letras de unidad más complejas, lo que hace que sea poco práctico o incluso engañoso asociar letras de unidad con particiones dentro de FDISK. Además, el hecho de que DR-DOS FDISK no solo particione sino que también formatee particiones recién creadas, hace que sea menos importante conocer la letra de unidad correspondiente. Además, Novell DOS 7 y versiones posteriores admiten oficialmente hasta 32 volúmenes utilizando la directiva LASTDRIVE =32 CONFIG.SYS . En Windows NT y versiones posteriores, se puede crear una cantidad ilimitada de particiones lógicas mediante la extensión de administración de discos de la Administración de equipos; aunque en la práctica, los usuarios rara vez creaban más de 23, ya que el shell de Windows NT (interfaz de usuario) todavía estaba limitado a acceder únicamente a las unidades con una letra de unidad de la A: a la Z:. Las versiones más nuevas de Windows admiten el montaje de particiones al estilo Unix en rutas de otro sistema de archivos, en lugar de una letra, y también permiten rutas de estilo UNC como \\?\Volume{ uuid }\ .

Véase también

Referencias

  1. ^ abc "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 utiliza Windows XP para crear una partición en un equipo que tenga instalados tanto Windows XP como Windows Vista". Soporte técnico de Microsoft . 2007-12-02 . Consultado el 2015-08-29 .
  3. ^ ab "Solución de problemas de discos y sistemas de archivos". Kit de recursos de Windows XP . Microsoft TechNet . 2005-11-03 . Consultado el 2011-09-15 .
  4. ^ de Andries E. Brouwer (2011) . "Lista de identificadores de partición para PC" . Consultado el 19 de julio de 2011. [0x05] admite discos de 8,4 GB como máximo: con el tipo 05, DOS/Windows no utilizará la llamada de 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 la corrupción de datos con MSDOS.
  5. ^ Andries Brouwer (2004). "Particiones lógicas y extendidas". Large Disk HOWTO . Consultado el 19 de julio de 2011 .
  6. ^ "ATA-5" (PDF) . T13/1321D . Comité Técnico T10 de INCITS sobre Interfaces de Almacenamiento 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 . Archivado desde el original el 2016-05-10 . Consultado el 2011-07-19 .
  8. ^ Anthony Lissot (2005). "Particionado con fdisk". Linux Partition HOWTO Revisión 3.5 . Consultado el 19 de julio de 2011 .
Obtenido de "https://es.wikipedia.org/w/index.php?title=Registro_de_arranque_extendido&oldid=1223591571"