fbpx
Wikipedia

Proceso de arranque en Linux

El proceso de arranque en Linux es el proceso de inicialización del sistema operativo que realiza Linux el núcleo o kernel (un componente de este sistema informático), el programa en el sistema que asigna los recursos de la máquina a los otros programas que ejecuta.

Descripción general del proceso típico de arranque en gnu/linux

En Linux, el flujo de control durante el arranque es desde el BIOS, al gestor de arranque y al núcleo (kernel). El núcleo inicia el planificador (para permitir la multitarea) y ejecuta el primer espacio de usuario (es decir, fuera del espacio del núcleo) y el programa de inicialización (que establece el entorno de usuario y permite la interacción del usuario y el inicio de sesión), momento en el que el núcleo se inactiva hasta que sea llamado externamente.

La etapa del cargador de arranque no es totalmente necesaria. Determinadas BIOS pueden cargar y pasar el control a Linux sin hacer uso del cargador. Cada proceso de arranque será diferente dependiendo de la arquitectura del procesador y el BIOS.

  1. El BIOS realiza las tareas de inicio específicas de la plataforma de hardware.
  2. Una vez que el hardware es reconocido y se inicia correctamente, el BIOS carga y ejecuta el código de la partición de arranque del dispositivo de arranque designado, que contiene la fase 1 de un gestor de arranque Linux. La fase 1 carga la fase 2 (la mayor parte del código del gestor de arranque). Algunos cargadores pueden utilizar una fase intermedia (conocida como la fase 1.5) para lograr esto, ya que los modernos discos de gran tamaño no pueden ser totalmente leídos sin código adicional.
  3. El gestor de arranque a menudo presenta al usuario un menú de opciones posibles de arranque. A continuación, carga el sistema operativo, que descomprime en la memoria, y establece las funciones del sistema como del hardware esencial y la paginación de memoria, antes de llamar a la función start_kernel().
  4. La función start_kernel() a continuación realiza la mayor parte de la configuración del sistema (interrupciones, el resto de la gestión de memoria, la inicialización del dispositivo, controladores, etc), antes de continuar por separado el proceso inactivo y planificador, y el proceso de Init (que se ejecuta en el espacio de usuario).
  5. El planificador toma control efectivo de la gestión del sistema, y el núcleo queda dormido (inactivo).
  6. El proceso Init ejecuta secuencias de comandos (Scripts) necesarios para configurar todos los servicios y estructuras que no sean del sistema operativo, a fin de permitir que el entorno de usuario sea creado y pueda presentarse al usuario con una pantalla de inicio de sesión

En el apagado, Init es llamado a cerrar toda las funcionalidades del espacio de usuario de una manera controlada, de nuevo a través de secuencias de comandos, tras lo cual el Init termina y el núcleo ejecuta el apagado.

Espacio de usuario temprano

El espacio de usuario temprano se utiliza en las versiones más recientes del núcleo Linux para sustituir tantas funciones como sea posible que originalmente se harían en el núcleo durante el proceso de inicio. Los usos típicos del espacio de usuario temprano son para detectar que controladores de dispositivos (Drivers) son necesarios para cargar el sistema de archivos del espacio de usuario principal y cargarlos desde un sistema de archivos temporal.

Fase del 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 operaciones bá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 de sesió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 archivos mínimo inicial se establece en la memoria RAM desde un archivo de imagen (" initrd "), y junto con los parámetros adecuados, el control se pasa al sistema operativo activado recientemente.

LILO y GRUB difieren en algunos aspectos:

  • LILO no entiende los sistemas de archivos, por lo que utiliza desplazamientos de disco sin procesar y el BIOS para cargar los datos. Se carga el código del menú y, a continuación, en función de la respuesta, carga, o el sector MBR del disco de 512 bytes como en Microsoft Windows, o la imagen del núcleo Linux.
  • GRUB por el contrario comprende los sistemas de archivos comunes ext2 , ext3 y ext4. Debido a que GRUB almacena sus datos en un archivo de configuración en vez de en el MBR y a que contiene un interfaz de línea de comandos, a menudo es más fácil rectificar o modificar GRUB si está mal configurado o corrupto.

GRUB

GRUB se carga y se ejecuta en 4 etapas:

  1. La primera etapa del cargador la lee el BIOS desde el MBR.
  2. La primera etapa carga el resto del gestor de arranque (segunda etapa). Si la segunda etapa está en una unidad grande, en ocasiones se carga una fase intermedia 1.5, que contiene código adicional para permitir que los cilindros por encima de 1024, o unidades tipo LBA, puedan leerse. El gestor de arranque 1.5 es almacenado (si es necesario) en el MBR o en la partición de arranque.
  3. La segunda etapa del gestor de arranque ejecuta y muestra el menú de inicio de GRUB que permite al usuario elegir un sistema operativo y examinar y modificar los parámetros de inicio.
  4. Después de elegir un sistema operativo, se carga y se le pasa el control.

GRUB soporta métodos de arranque directo, arranque chain-loading, LBA, ext2, ext3, ext4 y hasta "un pre-sistema operativo en máquinas x86 totalmente basado en comandos". Contiene tres interfaces: un menú de selección, un editor de configuración, y una consola de línea de comandos.

LILO

LILO es más antiguo. Es casi idéntico a GRUB en su proceso, excepto que no contiene una interfaz de línea de comandos. Por lo tanto todos los cambios en su configuración deben ser escritos en el MBR y luego reiniciar el sistema. Un error en la configuración puede dejar el disco inservible para el proceso de arranque hasta tal grado, que sea necesario usar otro dispositivo (disquete, etc) que contenga un programa capaz de arreglar el error. Además, no entiende el sistema de archivos. En su lugar, la ubicación de los archivos de imagen se almacenan directamente en el MBR y el BIOS se utiliza para acceder a ellos directamente.

Loadlin

Otra forma de cargar Linux es desde DOS o Windows 9x, donde el núcleo Linux reemplaza completamente la copia de funcionamiento de estos sistemas operativos. Esto puede ser útil en el caso de hardware que necesita ser conectado a través del software y la configuración de estos programas solo está disponible para DOS y no para Linux, debido a cuestiones de secretos industriales y código propietario. Sin embargo, esta tediosa forma de arranque ya no es necesaria en la actualidad ya que Linux tiene drivers para multitud de dispositivos hardware. Aun así, esto era muy útil en el pasado.

Otro caso es cuando Linux se encuentra en un dispositivo que el BIOS no lo tiene disponible para el arranque. Entonces, DOS o Windows pueden cargar el driver apropiado para el dispositivo superando dicha limitación del BIOS, y cargar Linux desde allí.

Fase del kernel

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 etapas: en la primera etapa el kernel (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 de inicio 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.

Fase de carga del kernel

El kernel es cargado normalmente como un archivo imagen, comprimido dentro de otro con zlib como zImage o bzImage. Contiene una cabecera de programa que hace una cantidad mínima de instalación del hardware, descomprime la imagen completamente en la memoria alta , teniendo en cuenta cualquier disco RAM si está configurado. A continuación, lleva a cabo su ejecución. Esto se realiza llamando la función startup del kernel (en los procesadores x86 a través de la función startup_32() del archivo /arch/i386/boot/head).

Fase de inicio del kernel

La función de arranque para el kernel (también llamado intercambiador o proceso 0) establece la gestión de memoria (tablas de paginación y paginación de memoria), detecta el tipo de CPU y cualquier funcionalidad adicional como capacidades de punto flotante, y después cambia a las funcionalidades del kernel para arquitectura no específicas de Linux, a través de una llamada a la función start_kernel().

start_kernel ejecuta una amplia gama de funciones de inicialización. Establece el manejo de interrupciones (IRQ), configura memoria adicional, comienza el proceso de inicialización (procesa el espacio del primer usuario), y luego comienza la tarea inactiva a través de cpu_idle(). En particular, el proceso de inicio del kernel también monta el disco RAM inicial ("initrd") que se ha cargado anteriormente como el sistema raíz temporal durante la fase de arranque. Esto permite que los módulos controladores se carguen sin depender de otros dispositivos físicos y drivers y mantiene el kernel más pequeño. El sistema de archivos raíz es cambiado más tarde a través de la llamada a pivot_root(), que desmonta el sistema de archivos temporal y lo reemplaza por el real una vez que éste sea accesible. La memoria utilizada por el sistema de archivos temporal es entonces recuperada.

Por lo tanto, el núcleo inicializa los dispositivos, monta el sistema de archivos raíz especificado por el gestor de arranque como de solo lectura , y se ejecuta Init (/sbin/init), que es designado como el primer proceso ejecutado por el sistema (PID=1). También puede ejecutar opcionalmente initrd para permitir instalar y cargar dispositivos relacionados (disco RAM o similar), para ser manipulados antes de que el sistema de archivos raíz está montado.

En este punto, con las interrupciones habilitadas, el programador puede tomar el control de la gestión general del sistema, para proporcionar multitarea preventiva, e iniciar el proceso para continuar con la carga del entorno de usuario en el espacio de usuario.

El proceso de inicio

El trabajo de Init es "conseguir que todo funcione como debe ser" una vez que el kernel está totalmente en funcionamiento. En esencia, establece y opera todo el espacio de usuario. Esto incluye la comprobación y montaje de sistemas de archivos, la puesta en marcha de los servicios de usuario necesarios y, en última instancia, cambiar al entorno de usuario cuando el inicio del sistema se ha completado. Es similar a los procesos Init de Unix y BSD, de la que deriva, pero en algunos casos se ha apartado o se hicieron a la medida. En un sistema Linux estándar, Init se ejecuta con un parámetro, conocido como nivel de ejecución, que tiene un valor entre 1 y 6, y que determina qué subsistemas pueden ser operacionales. Cada nivel de ejecución tiene sus propios scripts que codifican los diferentes procesos involucrados en la creación o salida del nivel de ejecución determinado, y son estas secuencias de comandos los necesarios en el proceso de arranque. Los scripts de Init se localizan normalmente en directorios con nombres como "/etc/rc...". El archivo de configuración de más alto nivel para Init es /etc/inittab.

Durante el arranque del sistema, se verifica si existe un nivel de ejecución predeterminado en el archivo /etc/inittab, si no, se debe introducir por medio de la consola del sistema. Después se procede a ejecutar todos los scripts relativos al nivel de ejecución especificado.

Después de que se han dado lugar todos los procesos especificados, Init se aletarga, y espera a que uno de estos tres eventos sucedan:- que procesos comenzados finalicen o mueran; un fallo de la señal de potencia (energía); o una petición a través de /sbin/telinit para cambiar el nivel de ejecución.

Enlaces externos

  • El código de un IPL en GNU ensamblador
  •   Datos: Q1068500

proceso, arranque, linux, este, artículo, sección, necesita, referencias, aparezcan, publicación, acreditada, este, aviso, puesto, diciembre, 2015, proceso, arranque, linux, proceso, inicialización, sistema, operativo, realiza, linux, núcleo, kernel, uncompone. Este articulo o seccion necesita referencias que aparezcan en una publicacion acreditada Este aviso fue puesto el 7 de diciembre de 2015 El proceso de arranque en Linux es el proceso de inicializacion del sistema operativo que realiza Linux el nucleo o kernel uncomponente de este sistema informatico el programa en el sistema que asigna los recursos de la maquina a los otros programas que ejecuta Indice 1 Descripcion general del proceso tipico de arranque en gnu linux 2 Espacio de usuario temprano 3 Fase del cargador de arranque 3 1 GRUB 3 2 LILO 3 3 Loadlin 4 Fase del kernel 4 1 Fase de carga del kernel 4 2 Fase de inicio del kernel 5 El proceso de inicio 6 Enlaces externosDescripcion general del proceso tipico de arranque en gnu linux EditarEn Linux el flujo de control durante el arranque es desde el BIOS al gestor de arranque y al nucleo kernel El nucleo inicia el planificador para permitir la multitarea y ejecuta el primer espacio de usuario es decir fuera del espacio del nucleo y el programa de inicializacion que establece el entorno de usuario y permite la interaccion del usuario y el inicio de sesion momento en el que el nucleo se inactiva hasta que sea llamado externamente La etapa del cargador de arranque no es totalmente necesaria Determinadas BIOS pueden cargar y pasar el control a Linux sin hacer uso del cargador Cada proceso de arranque sera diferente dependiendo de la arquitectura del procesador y el BIOS El BIOS realiza las tareas de inicio especificas de la plataforma de hardware Una vez que el hardware es reconocido y se inicia correctamente el BIOS carga y ejecuta el codigo de la particion de arranque del dispositivo de arranque designado que contiene la fase 1 de un gestor de arranque Linux La fase 1 carga la fase 2 la mayor parte del codigo del gestor de arranque Algunos cargadores pueden utilizar una fase intermedia conocida como la fase 1 5 para lograr esto ya que los modernos discos de gran tamano no pueden ser totalmente leidos sin codigo adicional El gestor de arranque a menudo presenta al usuario un menu de opciones posibles de arranque A continuacion carga el sistema operativo que descomprime en la memoria y establece las funciones del sistema como del hardware esencial y la paginacion de memoria antes de llamar a la funcion start kernel La funcion start kernel a continuacion realiza la mayor parte de la configuracion del sistema interrupciones el resto de la gestion de memoria la inicializacion del dispositivo controladores etc antes de continuar por separado el proceso inactivo y planificador y el proceso de Init que se ejecuta en el espacio de usuario El planificador toma control efectivo de la gestion del sistema y el nucleo queda dormido inactivo El proceso Init ejecuta secuencias de comandos Scripts necesarios para configurar todos los servicios y estructuras que no sean del sistema operativo a fin de permitir que el entorno de usuario sea creado y pueda presentarse al usuario con una pantalla de inicio de sesionEn el apagado Init es llamado a cerrar toda las funcionalidades del espacio de usuario de una manera controlada de nuevo a traves de secuencias de comandos tras lo cual el Init termina y el nucleo ejecuta el apagado Espacio de usuario temprano EditarEl espacio de usuario temprano se utiliza en las versiones mas recientes del nucleo Linux para sustituir tantas funciones como sea posible que originalmente se harian en el nucleo durante el proceso de inicio Los usos tipicos del espacio de usuario temprano son para detectar que controladores de dispositivos Drivers son necesarios para cargar el sistema de archivos del espacio de usuario principal y cargarlos desde un sistema de archivos temporal Fase del cargador de arranque EditarUn cargador de arranque boot loader en ingles es un programa disenado exclusivamente para cargar un sistema operativo en memoria La etapa del cargador de arranque es diferente de una plataforma a otra Como en la mayoria 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 operaciones basicas 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 continua 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 de sesion el usuario desea inicializar Bajo LILO esto se hace a traves del mapa instalado que lee el archivo de configuracion etc lilo conf para identificar los sistemas disponibles Incluye datos como la particion de arranque y la localizacion del kernel para cada uno asi como las opciones personalizadas en su caso El sistema operativo seleccionado es cargado en la memoria RAM un sistema de archivos minimo inicial se establece en la memoria RAM desde un archivo de imagen initrd y junto con los parametros adecuados el control se pasa al sistema operativo activado recientemente LILO y GRUB difieren en algunos aspectos LILO no entiende los sistemas de archivos por lo que utiliza desplazamientos de disco sin procesar y el BIOS para cargar los datos Se carga el codigo del menu y a continuacion en funcion de la respuesta carga o el sector MBR del disco de 512 bytes como en Microsoft Windows o la imagen del nucleo Linux GRUB por el contrario comprende los sistemas de archivos comunes ext2 ext3 y ext4 Debido a que GRUB almacena sus datos en un archivo de configuracion en vez de en el MBR y a que contiene un interfaz de linea de comandos a menudo es mas facil rectificar o modificar GRUB si esta mal configurado o corrupto GRUB Editar GRUB se carga y se ejecuta en 4 etapas La primera etapa del cargador la lee el BIOS desde el MBR La primera etapa carga el resto del gestor de arranque segunda etapa Si la segunda etapa esta en una unidad grande en ocasiones se carga una fase intermedia 1 5 que contiene codigo adicional para permitir que los cilindros por encima de 1024 o unidades tipo LBA puedan leerse El gestor de arranque 1 5 es almacenado si es necesario en el MBR o en la particion de arranque La segunda etapa del gestor de arranque ejecuta y muestra el menu de inicio de GRUB que permite al usuario elegir un sistema operativo y examinar y modificar los parametros de inicio Despues de elegir un sistema operativo se carga y se le pasa el control GRUB soporta metodos de arranque directo arranque chain loading LBA ext2 ext3 ext4 y hasta un pre sistema operativo en maquinas x86 totalmente basado en comandos Contiene tres interfaces un menu de seleccion un editor de configuracion y una consola de linea de comandos LILO Editar LILO es mas antiguo Es casi identico a GRUB en su proceso excepto que no contiene una interfaz de linea de comandos Por lo tanto todos los cambios en su configuracion deben ser escritos en el MBR y luego reiniciar el sistema Un error en la configuracion puede dejar el disco inservible para el proceso de arranque hasta tal grado que sea necesario usar otro dispositivo disquete etc que contenga un programa capaz de arreglar el error Ademas no entiende el sistema de archivos En su lugar la ubicacion de los archivos de imagen se almacenan directamente en el MBR y el BIOS se utiliza para acceder a ellos directamente Loadlin Editar Otra forma de cargar Linux es desde DOS o Windows 9x donde el nucleo Linux reemplaza completamente la copia de funcionamiento de estos sistemas operativos Esto puede ser util en el caso de hardware que necesita ser conectado a traves del software y la configuracion de estos programas solo esta disponible para DOS y no para Linux debido a cuestiones de secretos industriales y codigo propietario Sin embargo esta tediosa forma de arranque ya no es necesaria en la actualidad ya que Linux tiene drivers para multitud de dispositivos hardware Aun asi esto era muy util en el pasado Otro caso es cuando Linux se encuentra en un dispositivo que el BIOS no lo tiene disponible para el arranque Entonces DOS o Windows pueden cargar el driver apropiado para el dispositivo superando dicha limitacion del BIOS y cargar Linux desde alli Fase del kernel EditarEl kernel de Linux se encarga de todos los procesos del sistema operativo como la gestion de memoria planificador de tareas I O comunicacion entre procesos y el control general del sistema Este se carga en dos etapas en la primera etapa el kernel como un archivo imagen comprimido se carga y se descomprime en memoria y algunas funciones fundamentales como la gestion de memoria de base se establecen El control entonces se cambia a la etapa final para iniciar el kernel principal Una vez que el nucleo esta en pleno funcionamiento y como parte de su puesta en marcha despues de ser cargado y ejecutado el kernel busca un proceso de inicio para ejecutar que separadamente fija un espacio de usuario y los procesos necesarios para un entorno de usuario y ultimar la entrada Al nucleo en si entonces se le permite pasar a inactivo sujeto a las llamadas de otros procesos Fase de carga del kernel Editar El kernel es cargado normalmente como un archivo imagen comprimido dentro de otro con zlib como zImage o bzImage Contiene una cabecera de programa que hace una cantidad minima de instalacion del hardware descomprime la imagen completamente en la memoria alta teniendo en cuenta cualquier disco RAM si esta configurado A continuacion lleva a cabo su ejecucion Esto se realiza llamando la funcion startup del kernel en los procesadores x86 a traves de la funcion startup 32 del archivo arch i386 boot head Fase de inicio del kernel Editar La funcion de arranque para el kernel tambien llamado intercambiador o proceso 0 establece la gestion de memoria tablas de paginacion y paginacion de memoria detecta el tipo de CPU y cualquier funcionalidad adicional como capacidades de punto flotante y despues cambia a las funcionalidades del kernel para arquitectura no especificas de Linux a traves de una llamada a la funcion start kernel start kernel ejecuta una amplia gama de funciones de inicializacion Establece el manejo de interrupciones IRQ configura memoria adicional comienza el proceso de inicializacion procesa el espacio del primer usuario y luego comienza la tarea inactiva a traves de cpu idle En particular el proceso de inicio del kernel tambien monta el disco RAM inicial initrd que se ha cargado anteriormente como el sistema raiz temporal durante la fase de arranque Esto permite que los modulos controladores se carguen sin depender de otros dispositivos fisicos y drivers y mantiene el kernel mas pequeno El sistema de archivos raiz es cambiado mas tarde a traves de la llamada a pivot root que desmonta el sistema de archivos temporal y lo reemplaza por el real una vez que este sea accesible La memoria utilizada por el sistema de archivos temporal es entonces recuperada Por lo tanto el nucleo inicializa los dispositivos monta el sistema de archivos raiz especificado por el gestor de arranque como de solo lectura y se ejecuta Init sbin init que es designado como el primer proceso ejecutado por el sistema PID 1 Tambien puede ejecutar opcionalmente initrd para permitir instalar y cargar dispositivos relacionados disco RAM o similar para ser manipulados antes de que el sistema de archivos raiz esta montado En este punto con las interrupciones habilitadas el programador puede tomar el control de la gestion general del sistema para proporcionar multitarea preventiva e iniciar el proceso para continuar con la carga del entorno de usuario en el espacio de usuario El proceso de inicio EditarEl trabajo de Init es conseguir que todo funcione como debe ser una vez que el kernel esta totalmente en funcionamiento En esencia establece y opera todo el espacio de usuario Esto incluye la comprobacion y montaje de sistemas de archivos la puesta en marcha de los servicios de usuario necesarios y en ultima instancia cambiar al entorno de usuario cuando el inicio del sistema se ha completado Es similar a los procesos Init de Unix y BSD de la que deriva pero en algunos casos se ha apartado o se hicieron a la medida En un sistema Linux estandar Init se ejecuta con un parametro conocido como nivel de ejecucion que tiene un valor entre 1 y 6 y que determina que subsistemas pueden ser operacionales Cada nivel de ejecucion tiene sus propios scripts que codifican los diferentes procesos involucrados en la creacion o salida del nivel de ejecucion determinado y son estas secuencias de comandos los necesarios en el proceso de arranque Los scripts de Init se localizan normalmente en directorios con nombres como etc rc El archivo de configuracion de mas alto nivel para Init es etc inittab Durante el arranque del sistema se verifica si existe un nivel de ejecucion predeterminado en el archivo etc inittab si no se debe introducir por medio de la consola del sistema Despues se procede a ejecutar todos los scripts relativos al nivel de ejecucion especificado Despues de que se han dado lugar todos los procesos especificados Init se aletarga y espera a que uno de estos tres eventos sucedan que procesos comenzados finalicen o mueran un fallo de la senal de potencia energia o una peticion a traves de sbin telinit para cambiar el nivel de ejecucion Enlaces externos EditarEl codigo de un IPL en GNU ensamblador Datos Q1068500Obtenido de https es wikipedia org w index php title Proceso de arranque en Linux amp oldid 137171199, wikipedia, wiki, leyendo, leer, libro, biblioteca,

español

, española, descargar, gratis, descargar gratis, mp3, video, mp4, 3gp, jpg, jpeg, gif, png, imagen, música, canción, película, libro, juego, juegos