¿Qué hace que el dispositivo de arranque sea de arranque?

¿Qué hace que el dispositivo de arranque sea de arranque?

Por curiosidad, ¿qué hace que un dispositivo sea de arranque? Se agradecerían enlaces a explicaciones.

Respuesta1

Tal vez algunos detalles sobre cómo se organizan los medios de arranque podrían ayudar a definir "qué hace que los medios de arranque sean de arranque".

El procedimiento de arranque difiere según las arquitecturas, por lo que me limitaré a la PC estándar (es decir, arquitectura x86).

Primero, para que se "arranque" de manera efectiva, el BIOS debe seleccionar un medio después de la autoprueba de encendido (POST) posterior. Para que esto suceda, el medio debe sermarcado como de arranque, lo que significa que debe tener una firma de arranque en su primer sector. Esto es lo primero que hace que un medio sea de arranque.

Luego, el BIOS carga y le da la mano a este sector de arranque (lo que sea que esté almacenado allí... por lo que bien podría ser directamente un programa apropiado en modo real, pero sigamos con un esquema "normal"). Entonces, para ser arrancable, un medio debe tener dicho funcionamiento.sector de arranque.

Si el medio está particionado, entonces se instala un Master Boot Record (MBR) en este sector. Este código será responsable de verificar la tabla de particiones y encontrar la partición con elconjunto de banderas de arranque. Luego, el MBR cargará el primer sector de esta partición, que contiene lo que se conoce como Registro de arranque por volumen (VBR). Tenga en cuenta que en el caso de un medio no particionado, un VBR está ubicado en el primer sector del medio y, por lo tanto, el BIOS lo llama directamente.

Un VBR contiene unprograma de arranque. Este programa debe inicializar la máquina (es decir, activación de la memoria extendida a través de la Puerta A20, cambiar del modo real al modo protegido, etc.) para establecer un entorno adecuado para que se ejecute el código "moderno", cargar este código en la memoria y luego "saltar". " a eso. El código mencionado anteriormente puede ser un kernel del sistema operativo en el caso de un programa de carga de arranque, o un sistema de arranque múltiple (por ejemplo, GRUB, LILO) en el caso de una carga en cadena. De todos modos, al final, se necesita algún código ejecutable para que el medio arranque.

Lo que sigue (por ejemplo, descompresión del kernel, montaje inicial del disco RAM, carga de módulos en el caso de kernels híbridos o servidores que se inician para microkernels, etc.) no es estrictamente relevante desde el punto de vista de la organización de los medios de arranque.

Nota: Lo que describí es el proceso para discos duros y disquetes. Sin embargo, el caso de los CD es muy similar. Además, para poder arrancar, un CD debe seguir la especificación El-Torito, que es una extensión del estándar ISO9660. Originalmente, se requería que el CD contuviera una imagen de disquete de arranque (es decir, una imagen de 1,44 M en realidad), que el BIOS trataba como un disquete y se iniciaba en consecuencia. El hardware más reciente permite arrancar directamente sin esta solución.

Respuesta2

Lo que hace que un medio de arranque sea de arranque es

  • estándares para medios de arranque que definen cosas como:
    • plataforma de hardware para la que se aplica el gestor de arranque.
    • Ubicación en el medio del software del cargador de arranque.
    • el proceso mediante el cual se cargará ese software.
  • implementación de esos estándares en el hardware al que se conectan los medios.

Wikipedia tiene unaartículoque describe el proceso de arranque.

información relacionada