Arranque del sistema

De Wiki de Sistemas Operativos
Saltar a: navegación, buscar

El arranque de un sistema Linux moderno con systemd está descrito en Archivo:Sistema-de-arranque-linux.pdf.

Arranque de un sistema operativo

Un poco de historia:

  • Inicialmente, las instrucciones se introducían a mano desde un panel.
  • Los equipos más grandes tenían las instrucciones en una ROM, las cuales se copiaban a la memoria RAM.
  • Los equipos basados en microprocesadores tienen las instrucciones en una memoria junto a la BIOS. La ventaja de esto es que no hay que copiarlas a la RAM, el inconveniente es que dichas instrucciones ocupan memoria.

A partir de aquí, el proceso de arranque difiere, en esta entrada trataremos el arranque de los equipos tipo PC.

Estos equipos, al ser de arquitectura abierta, no sólo contemplan la BIOS como su propia ROM, sino también dispositivos externos.

El arranque de un sistema operativo suele ser un proceso muy común hasta cierto punto, en el cual difieren en función del tipo de sistema.


1. Se inicia el procesador y se prepara para ejecutar instrucciones, las condiciones iniciales son fijas.

2. Se ejecutan las primeras instrucciones.

3. Se inicia lo principal (comprobación de memoria, pantalla, teclado, reloj…).

4. Se inician los dispositivos adicionales con ROM propia. Se miran ciertas posiciones de memoria, y si no están vacías, la ROM principal salta ahí para iniciar el dispositivo (disco duro, disquete…).

5. Se determina de dónde se cargará el SO. Para esto, la BIOS carga un pequeño programa que es el que inicia el SO.

En caso de que éste se inicie desde el disco duro, la BIOS consultará la posición 0 del disco, en la que se encuentra la tabla de particiones, donde se indica dónde está el programa de carga del SO, el cual se iniciará y continuará con el proceso de arranque.

6. Se carga la parte principal del sistema operativo.

7. Se inicia el sistema operativo.

  • Se inician los elementos fundamentales del sistema operativo.
  • Se inician los elementos fundamentales de lectura/escritura (drivers).
  • Se comprueba el sistema de archivos.
  • Se completan las pruebas y se carga el software adicional.
  • Se arrancan los procesos necesarios del SO para que realice sus inicializaciones particulares.
  • En ciertos casos, se inicia un archivo de órdenes que arranca los programas de servicios.

A partir de este punto, se realiza una nueva división, en función de si el SO es interactivo sin identificación de usuario (MS-DOS, por ejemplo), si requiere identificación, si es por lotes sencillos o si es por lotes superior.

8a. Se lanza el intérprete de órdenes y la interfaz gráfica.

8b. Se lanza un proceso de log-in por cada terminal, el cual se mantiene en espera hasta que se identifique correctamente, punto en el cual, se lanzará el intérprete y la UI (interfaz de usuario).

8c. Se pone en marcha la cola de trabajos.

8d. Se inicia sesión en la consola del operador y éste montará los dispositivos, fijará los criterios de funcionamiento…

2.6. Componentes básicos de un sistema operativo