“Conocimiento Sistemas>Linux

¿Qué sucede cuando iniciamos a Linux?

2013/3/23
El arranque de un sistema Linux es un proceso complejo, pero se puede dividir en varias etapas clave:

1. BIOS/UEFI Inicialización: El proceso comienza con el BIOS (sistema básico de entrada/salida) o UEFI (interfaz de firmware extensible unificada), que son interfaces de firmware que inicializan el hardware. Esto incluye cosas como detectar RAM, CPU y dispositivos de almacenamiento. El BIOS/UEFI busca un cargador de arranque.

2. Cargador de arranque: El papel principal del cargador de arranque es cargar el kernel Linux. Los cargadores de arranque comunes incluyen GRUB (Grand Unified Boot Loader) y Systemd-Boot. El cargador de arranque encuentra la imagen del núcleo (generalmente llamada `vmlinuz` o similar) y el disco RAM inicial (initRAMFS, a menudo` initrd.img`). Los archivos de configuración del cargador de arranque (por ejemplo, `grub.cfg`) determinan qué sistema operativo arranque y otras opciones.

3. Carga e inicialización del núcleo: El cargador de arranque carga el núcleo en la memoria. El núcleo comienza a inicializar el hardware del sistema. Esto implica:

* Detección e inicialización del hardware: El núcleo identifica y configura todos los dispositivos de hardware conectados, como el disco duro, la tarjeta de red y la tarjeta gráfica. Los controladores de dispositivos se cargan según sea necesario.

* Montando el sistema de archivos raíz: El kernel monta el sistema de archivos raíz (típicamente un ext4, btrfs u otro sistema de archivos) desde el disco duro. Esto hace que los archivos del sistema operativo sean accesibles.

* Configuración de procesos: El núcleo crea varios procesos esenciales para la operación del sistema.

4. initramfs (disco de RAM inicial): Antes de montar el sistema de archivos raíz, se usa un initRAMFS. Este es un pequeño sistema de archivos temporal cargado en RAM. Contiene controladores esenciales (por ejemplo, para el sistema de archivos en sí) y los scripts necesarios para montar el sistema de archivos raíz. Una vez que se monta el sistema de archivos raíz, se descartan el initRAMFS.

5. Inicialización del sistema: Una vez que se monta el sistema de archivos raíz, el kernel ejecuta el proceso init (PID 1). Históricamente, este fue `init`, un proceso simple. En los sistemas modernos, `Systemd` (u otro sistema init como 'Runit` o` S6`) se usa casi universalmente. `SystemD` es un sistema init más sofisticado responsable de:

* Servicios de inicio: `SystemD` inicia varios servicios del sistema (demonios), como el administrador de red, el servidor SSH, el administrador de visualización (por ejemplo, GDM, LightDM, SDDM) y otros procesos de fondo que proporcionan la funcionalidad del sistema operativo. Estos se definen en archivos unitarios (`.Service`).

* Gestión de dependencias: `SystemD` garantiza que los servicios comiencen en el orden correcto, manejando las dependencias entre ellos.

* Proporcionando otras funcionalidades del sistema: `SystemD` también maneja cosas como registrar, Journald y administrar el estado de tiempo de ejecución del sistema.

6. Interfaz gráfica/interfaz: Finalmente, después de que todos los servicios necesarios han comenzado, el sistema está listo para que un usuario inicie sesión. Esto podría implicar una pantalla de inicio de sesión gráfica (usando un administrador de visualización) o un indicador de inicio de sesión basado en texto.

Esta es una descripción general de alto nivel. Los detalles exactos pueden variar según la distribución específica de Linux, la versión del núcleo y la configuración de hardware. Sin embargo, las etapas centrales siguen siendo en gran medida consistentes en los diferentes sistemas de Linux.

Linux
Aprender Kernel Linux Programación
Cómo copiar y pegar Usando VI
Cómo aumentar la velocidad de descarga en Linux
Cómo comprobar la memoria en Linux
Cómo configurar Canon Pixma IP2600 en Linux
¿Describe el arranque cálido como un proceso de encender la computadora?
¿Puedes realizar un arranque dual en Windows y Unix?
Cómo volver a formatear la tarjeta SD para Linux
Conocimiento de la computadora © http://www.ordenador.online