Una mirada m�s cercana al proceso de inicio

Puede iniciar su sistema Linux desde un disco duro o disquete. La secci�n de instalaci�n de la Gu�a GNU/Linux: Instalaci�n y Primeros Pasos, se explica c�mo instalar el sistema operativo para arrancar de un modo u otro.

Al encender una PC, el BIOS efect�a varias pruebas al hardware para asegurarse de que no existan problemas[24] , y luego empieza realmente el proceso de inicio del sistema operativo. El BIOS selecciona una unidad de disco y lee su primer sector. T�picamente, la unidad de disco seleccionada es la unidad de disquetes (y funciona si existe un disquete insertado booteable), de no ser as� selecciona el primer disco duro, si existe un disco en la computadora (de todas maneras el orden de selecci�n de unidad de discos es configurable en la mayor�a de las PC's). Al primer sector de un disco se le llama sector de arranque, en ingl�s boot sector o master boot sector (MBR o sector de arranque maestro). Si el disco contiene varias particiones, cada una de ellas tiene su propio sector de arranque (primer sector de cada partici�n).

El sector de arranque (boot sector) contiene un peque�o programa lo suficientemente peque�o para que quepa en un �nico sector, cuya responsabilidad es leer el sistema operativo desde el disco, cargarlo en memoria y ponerlo en ejecuci�n. Cuando se inicia Linux desde un disquete, el sector de arranque contiene un c�digo que solamente lee los primeros cientos de bloques (dependiendo del tama�o del kernel por supuesto) y los coloca en una ubicaci�n predeterminada en la memoria. En un disquete de inicio de Linux no existe un sistema de archivos, el kernel est� simplemente almacenado en sectores consecutivos, lo que simplifica el proceso de arranque. Sin embargo es posible tambi�n arrancar desde un disquete con un sistema de archivos utilizando LILO, el cargador de Linux.

Al arrancar desde un disco duro, el c�digo contenido en el sector de arranque maestro (MBR o Master Boot Record), examina la tabla de particiones del disco duro (esta tabla tambi�n se almacena en el MBR), identifica la partici�n activa (aquella partici�n que ha sido designada como de inicio), lee el cargador contenido en el sector de arranque (boot sector) a una localizaci�n en memoria y lo ejecuta.

El c�digo almacenado en el sector de arranque de la partici�n del disco duro hace lo mismo que el contenido en el sector de arranque del diskette: lee el kernel desde la partici�n del disco duro, lo coloca en memoria e inicia su ejecuci�n. Sin embargo, existen diferencias. No es muy �til mantener una partici�n exclusiva para almacenar la imagen del kernel, por lo tanto el cargador no se limita a leer de manera secuencial los sectores del disco, como lo hace en el caso de un floppy, sino que en el caso de un disco duro debe encontrar en qu� lugar del sistema de archivos ha sido almacenado el kernel. Existen varias maneras de resolver este problema, pero la m�s com�n es utilizando LILO (consulte la documentaci�n de LILO si desea conocer mayores detalles de c�mo LILO realiza esta tarea).

LILO normalmente lee, coloca en memoria y comienza la ejecuci�n del kernel Linux predeterminado. Es posible configurar LILO para que sea capaz de iniciar una de varias im�genes del kernel diferentes, o de otros sistemas operativos. De esta manera, tambi�n es posible que el usuario seleccione con cu�l de ellos trabajar al momento de iniciar el sistema. Se puede configurar LILO, para que no inicie la carga del kernel predeterminado de manera inmediata y consulte cu�l kernel o sistema operativo debe iniciarse (esta configuraci�n necesita que se mantengan presionadas la teclas de alt, shift, or ctrl cuando LILO comienza su ejecuci�n). Otra opci�n consiste en configurarlo de manera que siempre consulte desde qu� imagen o sistema se va a iniciar, y que transcurrido cierto tiempo de no recibir ninguna indicaci�n, arranque desde el kernel predeterminado.

Con LILO es posible "pasarle" al kernel informaci�n a trav�s de argumentos en la l�nea de comandos (kernel command line argument), tecleando los argumentos despu�s del nombre del kernel o del sistema operativo que se desea utilizar.

Iniciar el sistema desde un disquete o desde un disco duro tienen ventajas diferentes, aunque generalmente iniciar desde el disco duro es mas agradable, ya que evita la incomodidad de lidiar con diskettes. Tambi�n es m�s r�pido. Sin embargo, en un principio puede ser complejo para algunos usuarios instalar el sistema para que arranque desde un disco duro. Por lo que, a veces se instala de manera que inicie desde un disquete y despu�s cuando el sistema est� instalado de manera adecuada y todo funciona correctamente se instala el LILO para arrancar desde el disco duro.

Despu�s de que el kernel ha sido le�do del disco, cargado en la memoria y puesto en ejecuci�n, pasa lo siguiente:



[24] El nombre de este chequeo es power on self test, or POST for short.