Upstart

De Wikipedia, la enciclopedia libre
Upstart
Información general
Tipo de programa Demonio de inicio
Autor Scott James Remnant
Desarrollador Canonical Ltd.
Lanzamiento inicial 24 de agosto de 2006
Licencia GNU GPL 2
Información técnica
Programado en C
Versiones
Última versión estable 1.13 ( 11 de julio de 2014 (9 años, 9 meses y 16 días))
Enlaces

En informática, Upstart es un reemplazo basado en eventos para el daemon init, el método utilizado por varios sistemas operativos Unix-like para realizar tareas durante el arranque del sistema. Fue programado por Scott James Remnant, un antiguo trabajador de Canonical Ltd.

Motivación[editar]

El daemon init tradicional es estrictamente síncrono, bloqueando futuras tareas hasta que la actual se haya completado. Sus tareas deben ser definidas por adelantado, y solo pueden ser ejecutadas cuando el daemon init cambia de estado (cuando la máquina se arranca o se apaga). Esto hace que no sea capaz de manejar de forma elegante varias tareas en computadoras de escritorio modernas, incluyendo:

  • La conexión o desconexión de una memoria USB y otros medios de almacenamiento portables / dispositivos de red mientras la máquina está arrancada.
  • El descubrimiento y exploración de nuevos dispositivos de almacenamiento, sin bloquear el sistema, especialmente cuando un disco puede no encenderse hasta que este es explorado.
  • La carga de firmware para un dispositivo, lo cual podría tener que realizarse después de sea detectado pero antes de que sea utilizable.

El modelo basado en eventos de Upstart le permite responder a los eventos de forma asíncrona cuando estos son generados.[1]

Diseño[editar]

Upstart trabaja de forma asíncrona supervisando las tareas mientras el sistema esta arrancado. También gestiona las tareas y servicios de inicio cuando el sistema arranca y los detiene cuando el sistema se apaga

La fácil transición y la perfecta retrocompatibilidad con sysvinit fueron objetivos explícitos en el diseño.[2]​ Por lo tanto, Upstart es capaz de ejecutar scripts de sysvinit sin modificaciones. De esta manera se diferencia de la mayoría de reemplazos de init, que normalmente requieren una transición completa para funcionar correctamente y no son compatibles con un entorno mixto formado por métodos de arranque tradicionales y nuevos.[3]

Adopción[editar]

A medida que Upstart madura, se pretende que sus funciones se extiendan a las tareas gestionadas por cron, anacron, el demonio del comando at (atd) y posiblemente (pero mucho menos probable) inetd.

Las distribuciones en las que Upstart está habilitado por defecto son:

Las distribuciones que usaron Upstart en alguna versión pero han cambiado a systemd en versiones posteriores:

  • Debian decidió que systemd será usado por defecto desde la versión jessie,[9] después de considerar Upstart.[9]
  • Fedora 9 reemplazó a sysvinit con Upstart, sin embargo, Upstart ha sido reemplazado por systemd en Fedora 15.[10][11]
  • Red Hat incluye Upstart en Red Hat Enterprise Linux 6.[12]​ Como resultado, también es usado por sus variantes tales como Centos, Scientific Linux y Oracle Linux. En RHEL 7, systemd es el sistema de inicio por defecto al igual que en sus variantes.[13]
  • openSUSE incluyó Upstart en la versión 11.3 Milestone 4, pero no por defecto.[14]​ Upstart fue reemplazado por systemd en openSUSE 12.1.[15]

Véase también[editar]

  • systemd
  • initng — otro reemplazo asíncrono para sysvinit
  • launchd — introducido en Mac OS X v10.4 para reemplazar a init y otros scripts de arranque así como a crond
  • Service Management Facility — un completo reemplazo para init rediseñado desde cero para Solaris, introducido en Solaris 10
  • eINIT — un completo reemplazo de init para arrancar los procesos de manera asíncrona, pero con el potencial de no usar shell-scripts

Referencias[editar]

  1. Remnant, Scott James (26 de agosto de 2006). «Upstart in Universe». Netsplit. Archivado desde el original el 4 de septiembre de 2009. Consultado el 12 de septiembre de 2009. 
  2. Moser, scott (13 de julio de 2010). «cannot send QUIT signal on 'stop'» (html). Launchpad (en inglés). Archivado desde el original el 12 de junio de 2020. Consultado el 11 de junio de 2020. 
  3. Remnant, Scott James (23 de junio de 2006). «ReplacementInit» (html). Ubuntu wiki (en inglés). Archivado desde el original el 26 de abril de 2013. Consultado el 11 de junio de 2020. 
  4. «Upstart», About (Ubuntu) . (enlace roto disponible en Internet Archive; véase el historial, la primera versión y la última).
  5. Shuttleworth, Mark. "Losing graciously".
  6. Security Overview: Chromium OS design documents, Google, consultado el 25 de noviembre de 2009 .
  7. Fremantle, Maemo, consultado el 24 de agosto de 2009 .
  8. Palm Pre, Live Journal, consultado el 9 de julio de 2009 .
  9. The Debian technical committee vote concludes, Lwn.net, 2014-02-11
  10. Fedora 14 Accepted Features, 13 de julio de 2010, consultado el 13 de julio de 2010 .
  11. «Fedora defers systemd to F15». Linux Weekly News. 14 de septiembre de 2010. Consultado el 17 de septiembre de 2010. 
  12. Enterprise 6 Beta Release notes, Red Hat . (enlace roto disponible en Internet Archive; véase el historial, la primera versión y la última).
  13. Tim Burke (27 de junio de 2012), «Red Hat Enterprise Linux Roadmap Highlights» (PDF), presentation, archivado desde el original el 7 de abril de 2015, consultado el 20 de febrero de 2014 .
  14. OpenSUSE gets an Upstart, The H, 26 de marzo de 2010, consultado el 4 de abril de 2010 .
  15. Chris von Eitzen (16 de noviembre de 2011), openSUSE 12.1 arrives with systemd and Btrfs, The H, archivado desde el original el 20 de abril de 2012, consultado el 16 de noviembre de 2011 .

Enlaces externos[editar]