Arranque del Sistema Linux
La BIOS
Cuando un ordenador se carga, el procesador busca al final de la memoria del sistema
por Basic Input/Output System o el programa BIOS y lo ejecuta. La BIOS controla no sólo el primer paso del proceso de arranque, sino que también proporciona una interfaz de bajo nivel para dispositivos periféricos. Por este motivo se escribe tan sólo en modo lectura,memoria permanente y está siempre disponible para el uso.
Una vez que se haya cargado, la BIOS chequea los periféricos y localiza un dispositivo con el que arrancar el sistema. Habitualmente, en primer lugar comprueba cualquier disquete y unidades de CD-ROM presente por los medios de arranque, y a continuación si esto falla, va las unidades de disco duro del sistema. El orden de las unidades necesariopara arrancar puede ser controlado con una configuración de la BIOS. La BIOS carga en memoria cualquier programa que resida en el primer sector de este dispositivo, llamado Master Boot Record o MBR. La MBR sólo tiene 512 bytes de tamaño y contiene las instrucciones de código de máquina para el arranque del equipo, llama un gestor de arranque así como también la tabla de particiones. Una vez que laBIOS haya encontrado y cargado el gestor de arranque en memoria, le deja el control del proceso de arranque a éste.
Los gestores de arranque de Linux se dividen en dos etapas. La primera es un código binario de máquina pequeña en el MBR. Su única función es la de localizar el gestor de arranque de la segunda etapa y cargar la primera parte de éste en memoria.
GRUB es el gestor de arranque másnuevo y tiene la ventaja de ser capaz de leer particiones ext2 y ext3 y cargar su archivo de configuración— /boot/grub/grub.conf— al momento de arranque.
El kernel de Linux se encarga de todos los procesos del sistema operativo, como la gestión de memoria, planificador de tareas, I/O, comunicación entre procesos, y el control general del sistema. Este se carga en dos etapa: en la primera etapa elkernel (como un archivo imagen comprimido) se carga y se descomprime en memoria, y algunas funciones fundamentales como la gestión de memoria de base se establecen. El control entonces se cambia a la etapa final para iniciar el kernel principal. Una vez que el núcleo está en pleno funcionamiento y como parte de su puesta en marcha, después de ser cargado y ejecutado el kernel busca un proceso deinicio para ejecutar, que (separadamente) fija un espacio de usuario y los procesos necesarios para un entorno de usuario y ultimar la entrada . Al núcleo en sí entonces se le permite pasar a inactivo, sujeto a las llamadas de otros procesos.
Cargador de arranque.
Un cargador de arranque (boot loader en inglés) es un programa diseñado exclusivamente para cargar un sistema operativo en memoria.La etapa del cargador de arranque es diferente de una plataforma a otra.
Como en la mayoría de arquitecturas este programa se encuentra en el MBR, el cual es de 512 bytes, este espacio no es suficiente para cargar en su totalidad un sistema operativo. Por eso, el cargador de arranque consta de varias etapas. Las primeras operaciones las realiza el BIOS. En esta etapa se realizan operacionesbásicas de hardware. En esta primera etapa se localiza el sector de arranque (o MBR) y se carga el cargador de este sector (normalmente una parte de LILO o GRUB).
A partir de ese momento, el proceso de arranque continúa de la siguiente manera:
La primera etapa del cargador de arranque carga el resto del gestor de arranque, que normalmente da un mensaje que pregunta que sistema operativo (o tipo desesión) el usuario desea inicializar. Bajo LILO, esto se hace a través del mapa instalado que lee el archivo de configuración /etc/lilo.conf para identificar los sistemas disponibles. Incluye datos como la partición de arranque y la localización del kernel para cada uno, así como las opciones personalizadas en su caso. El sistema operativo seleccionado es cargado en la memoria RAM, un sistema de...
Regístrate para leer el documento completo.