Inicio

Master boot record


El master boot record (MBR) es el primer sector (“sector cero”) de un dispositivo de almacenamiento de datos, como un disco duro. A veces, se emplea para el arranque del sistema operativo con bootstrap, otras veces es usado para almacenar una tabla de particiones y en ocasiones, se usa sólo para identificar un dispositivo de disco individual, aunque en algunas máquinas esto último no se usa y es ignorado.

Estructura

En la práctica, el MBR casi siempre se refiere al sector de arranque de 512 bytes, o el partition sector de una partición para ordenadores compatibles con IBM PC. Debido a la amplia implementación de ordenadores PC clónicos, este tipo de MBR se usa mucho, hasta el punto de ser incorporado en otros tipos de ordenadores y en nuevos estándares multiplataforma para el particionado y el arranque.

Cuando un dispositivo de almacenamiento de datos se ha particionado con un esquema de tabla de particiones del MBR (por ejemplo el esquema convencional de particionado de IBM PC), el MBR contiene las entradas primarias en la tabla de particiones. Las entradas de particiones secundarias se almacenan en registros de particiones extendidas, etiquetas de disco BSD, y particiones de metadatos del Logical Disk Manager que son descritas por esas entradas de particiones primarias.

Por convención, hay exactamente cuatro entradas de particiones primarias en el esquema de la Tabla de Particiones, aunque en algunos sistemas (pocos) se ha extendido ese número a cinco u ocho.

Cuando un dispositivo de almacenamiento de datos se ha particionado con Tabla de Particiones GUID, el Master Boot Record no contiene la tabla de particiones (aunque contiene modelos de estructuras de datos, una protección del MBR frente a programas que sólo entienden el esquema de la Tabla de Particiones del MBR para que no creen particiones en el disco) y se usa poco debido a lo que puede afectar al particionado de disco.

El MBR y el arranque del sistema

En los ordenadores compatibles IBM IA-32 que usan el esquema de la Tabla de Particiones del MBR, el firmware para el arranque (bootstrapping) que se encuentra en la memoria de solo lectura del BIOS (actualmente usan memorias flash) carga y ejecuta el master boot record. Como los procesadores del modo real, el código del MBR está compuesto de instrucciones de lenguaje máquina en modo real. Ese código pasa, normalmente, el control mediante chain loading al volume boot record de la partición (primaria) activa, aunque algunos gestores de arranque reemplazan ese código convencional por el suyo.

El código convencional del MBR espera que se use el esquema de la tabla de particiones del MBR, y escanea la lista de entradas de particiones (primarias) en la tabla de particiones buscando una que esté marcada con active flag. Luego carga y ejecuta el Volume Boot Record para esa partición (así que el master boot record, como otros sectores de arranque, es un blanco para los virus que infectan el sector de arranque).

El código del MBR, modificado por algunos gestores de arranque, puede realizar una serie de tareas que son distintas según el gestor de arranque. Por ejemplo, en algunos gestores, ese código carga el resto del código del gestor de arranque desde la primera pista del disco (que es espacio libre no asignado a ninguna partición de disco) y lo ejecuta. En otros, usa una tabla de posiciones de disco, que se encuentra en el mismo espacio que el código, para localizar el código del resto del gestor de arranque y poder cargarlo y ejecutarlo. Ambas formas tienen problemas. La primera confía en el comportamiento (que no es el mismo en todas) de las utilidades de particionado de disco y la segunda requiere que la tabla de posiciones de disco se actualice una vez se hayan hecho los cambios para localizar el resto del código.

En los ordenadores que no usan procesadores IA-32, o en ordenadores que usan el esquema de la tabla de particiones GUID, ese esquema no es correcto, y el MBR no se utiliza en el arranque del sistema. En su lugar el firmware es capaz de entender directamente el esquema de particionado GPT y el formato de sistema de ficheros FAT, de modo que carga y ejecuta programas guardados como ficheros en la Partición del Sistema. El MBR, por tanto, no interviene en absoluto en el arranque del sistema (excepto indirectamente, en la medida en que podría contener la tabla de particiones si se ha usado el esquema de la Tabla de Particiones del MBR).

El MBR y la identificación de los discos

Además del código del arranque y la tabla de particiones, hay un tercer campo que puede estar contenido en un MBR: la firma del disco (de Windows NT). Tiene 32 bits para identificar inequívocamente el hardware de disco (no confundir con la unidad de disco — no tienen por qué ser lo mismo en discos duros extraíbles).

La firma del disco fue introducida por Windows NT 3.5, pero actualmente la usan varios sistemas operativos, incluida las versiones de la 2.6 en adelante del núcleo Linux. Windows NT usa la firma del disco como un índice en su registro, donde guarda la relación entre particiones y letras de disco. También lo usa en el fichero boot.ini para indicar las particiones con marca bootable en Windows NT. GNU/Linux usa la firma del disco al arrancar para determinar la posición del volumen de arranque.

Fuente: Wikipedia

A %d blogueros les gusta esto: