En sistemas tipo Unix, init (abreviatura de initialization) es el primer proceso en ejecución tras la carga del núcleo y el que a su vez genera todos los demás procesos. Se ejecuta como demonio y por lo general tiene PID 1.

Tradicionalmente, esta funcionalidad se ha implementado de forma distinta en los dos grandes sistemas operativos: System V y BSD. En el Unix original, el proceso init arrancaba los servicios de mediante un único script denominado /etc/rc. Posteriormente, la versión System V del Unix de AT&T introdujo un nuevo esquema de directorios en /etc/rc.d/ que contenía scripts de arranque/parada de servicios.

GNU/Linux adoptó el esquema System V, aunque algunas distribuciones, como Slackware, usan el estilo BSD y otros, como Gentoo, tienen su propia versión personalizada. Debian, RedHat y algunas otras distribuciones de GNU con Linux utilizan ahora Systemd como reemplazo para el proceso de inicialización tradicionales.

Estilo BSD

editar

El init de BSD ejecuta el script de inicialización en /etc/rc, de forma parecida a como se hacía en el Unix original de Bell Labs. No hay niveles de ejecución (runlevels), el archivo /etc/rc determina qué programas se ejecutan por init. La ventaja de este sistema es que es simple y fácil de editar manualmente, aunque sujeto a errores. pues un simple error en ese script podría inutilizar el procedimiento de arranque del sistema.

Sin esto, no existirian los demás sistemas de inicialización en los scripts.

Estilo System V

editar

En GNU/Linux es el fichero encargado de establecer los runlevels disponibles, para que pueda ser leído por init. A continuación se muestra un ejemplo del inicio de este fichero, en el cual se establece el runlevel 5, y sus características:

  • /etc/inittab: init(8) configuración
  • $Id: inittab, v 1.9 2001/05/31
  • El runlevel por defecto
  • id:5:initdefault:
  • Runlevel 0 es detener
  • Runlevel 1 es monousuario
  • Runlevels 2-5 son multiusuario
  • Runlevel 6 es reinicio

Véase también

editar

Enlaces externos

editar


📚 Artikel Terkait di Wikipedia

Lengua de señas hondureña

2021.  Cahill, Peter T. (2012). Usted es haragán, pero vos sos lazy: initialization in Honduran Sign Language (Tesis). Pittsburgh: Universidad de Pittsburgh

INI (extensión de archivo)

This mapping is likely if an application modifies system-component initialization files, such as Control.ini, System.ini, and Winfile.ini. In these cases

Lazy loading

Existen cuatro formas comunes de implementar la carga diferida: lazy initialization; virtual proxy; ghost y value holder. Cada uno tiene sus propias ventajas

Fuga de memoria

referido por sus siglas en inglés RAII (de "Resource Acquisition Is Initialization"), es un popular patrón de diseño en varios lenguajes de programación

Openframe

threadsafe, non-blocking, clusterable) Otras optimizaciones (lazy initialization, subselect fetching, …) Integración J2EE (EJB 3.0, JMX, JTA,…) Extensible

C++20

Specification on C++ Extensions for Coroutines».  Tim Shen. «Designated Initialization Wording».  Thomas Köppe. «Allow lambda capture [=, this]».  «Familiar

RAII

RAII (del inglés resource acquisition is initialization, que podría traducirse como «adquirir recursos es inicializar») es un popular patrón de diseño

Invariantes de clase

palabra clave invariant. class FECHA create make feature {NONE} -- Initialization make (a_dia: INTEGER; a_hora: INTEGER) -- Inicializa el objeto con `a_dia'