¿Cómo funciona un administrador de arranque y cómo funciona de manera diferente en una máquina BIOS y UEFI?

¿Cómo funciona un administrador de arranque y cómo funciona de manera diferente en una máquina BIOS y UEFI?

Después de leer mucho en línea, empiezo a sentirme cada vez más confundido acerca de cómo funciona el administrador de arranque. Me he dado cuenta de que el administrador de arranque, como rEFInd, no es una actualización ni nada relacionado con el firmware (corríjame si estoy equivocado). Ahora tengo el siguiente entendimiento:

Para una máquina BIOS, uno esperaría que el firmware del BIOS reconociera todos los discos presentes en la computadora (no reconoce particiones en ningún disco). Digamos que la máquina tiene un disco duro interno y un CD externo conectado. Luego, BIOS le permite elegir uno de ellos y leer el cargador de arranque en el MBR del disco duro o CD. Ahora supongamos que tiene Windows y Linux instalados en el disco duro. Aquí viene la parte de la que no estoy completamente seguro: si ha instalado GRUB, tanto un administrador de arranque como un cargador de arranque, ¿significa que después de elegir arrancar desde el disco duro, el cargador de arranque de GRUB se lee y se ejecuta, lo que invoca el ¿Administrador de arranque GRUB? luego, el administrador de arranque GRUB reconoce los diferentes sistemas que tiene en su máquina e invoca el cargador de arranque para Windows o el cargador de arranque para Linux, que todavía forma parte de GRUB.

Para la máquina UEFI, parece que el firmware ya es un administrador de arranque, ya que reconoce la tabla de particiones y todos los discos conectados a la computadora. Entonces, todo lo que necesita es escribir el cargador de arranque en la partición del sistema EFI y el firmware le permitirá elegir qué cargador de arranque desea usar en el momento del arranque. ¿Está bien? Sin embargo, noto que todavía hay un administrador de arranque como rEFInd disponible para la máquina UEFI, ¿para qué sirven entonces si el firmware ya actúa como un administrador de arranque? Además, ¿se considera rEFInd material de firmware o simplemente alguna aplicación instalada en la partición del sistema EFI de un disco en particular?

Respuesta1

Cualquier código que se ejecute antes de que se inicie el sistema operativo principal y que esté involucrado en el inicio de otros programas es un gestor de arranque. La mayoría de las computadoras, incluso la mayoría de los dispositivos integrados, tienen una cadena de cargadores de arranque: código en ROM o memoria flash que carga otro fragmento de código desde la memoria flash o una unidad de disco, que carga otro fragmento de código, etc. El BIOS es un gestor de arranque (y puede que lo sea), reFInd es un gestor de arranque, Grub es un gestor de arranque, etc.

Algunos cargadores de arranque no hacen más que cargar otro fragmento de código y pasar a él, pero la mayoría realiza tareas adicionales como leer datos de configuración, detectar periféricos conectados, probar hardware, inicializar dispositivos, enumerar dispositivos de red y de almacenamiento para determinar qué cargar a continuación y mostrar mensajes. en la pantalla, escuchando la entrada del usuario para permitirle influir en el proceso de arranque, etc.

Un administrador de arranque es un tipo particular de cargador de arranque que incluye una forma para que el usuario seleccione entre varios sistemas operativos. El gestor de arranque de Grub en realidad no “invoca” al administrador de arranque de Grub; la funcionalidad del administrador de arranque es un aspecto de Grub.

Algunos BIOS heredados de PC tienen funciones básicas de administrador de arranque, ya que permiten al usuario seleccionar entre algunos dispositivos; es limitado porque el BIOS heredado sólo puede cargar los primeros 512 bytes de un disco y ejecutar código allí. UEFI tiene un administrador de arranque más potente que permite al usuario seleccionar entre archivos en una partición FAT.

Que los gestores de arranque cuenten como firmware depende exactamente de cómo se define el firmware. Según la definición "proporcionados con el hardware de la computadora, en lugar de instalados en un dispositivo de almacenamiento", BIOS y UEFI son firmware, pero reFInd y Grub no lo son. Según la definición de "independiente del sistema operativo", reFInd y Grub son firmware.

información relacionada