Upstart

From Wikipedia, the free encyclopedia
Jump to: navigation, search
Upstart
Upstart logo
Original author(s) Scott James Remnant
Developer(s) Canonical Ltd.
Initial release 24 August 2006
Stable release 1.8 / March 22, 2013; 59 days ago (2013-03-22)
Written in C
Operating system Linux
Type Init daemon
License GNU General Public License
Website upstart.ubuntu.com

Upstart is an event-based replacement for the traditional init daemon — the method by which several Unix-like computer operating systems perform tasks when the computer is started. It was written by Scott James Remnant, a former employee of Canonical Ltd.

Contents

Rationale [edit]

The traditional init process is strictly synchronous, blocking future tasks until the current one has completed. Its tasks must also be defined in advance, and they only run when the init daemon changes state (such as when the machine is powered on or off). This leaves it unable to handle various tasks on a modern desktop computer elegantly, including:

  • The addition or removal of USB pen drives and other portable storage / network devices while the machine is running
  • The discovery and scanning of new storage devices, without locking the system, especially when a disk may not even power on until it is scanned
  • The loading of firmware for a device, which may need to occur after it is detected but before it is usable

Upstart's event-driven model allows it to respond to events asynchronously as they are generated.[1]

Design [edit]

Upstart operates asynchronously — as well as handling the starting of tasks and services during boot and stopping them during shutdown, it supervises them while the system is running.

Easy transition and perfect backwards compatibility with sysvinit were explicit design goals.[2] As such, Upstart is able to run sysvinit scripts unmodified. In this way it differs from most other init replacements, which usually assume and require complete transition to run properly, and don't support a mixed environment of traditional and new startup methods.[3]

Adoption [edit]

As Upstart matures, it is intended that its role will expand to the duties currently handled by cron, anacron, the at command's daemon (atd), and possibly (but much less likely) inetd.

Distributions in which Upstart is enabled by default:

Distributions that used Upstart in some versions but moved to systemd in later versions:

Other:

  • Debian considered switching for the Squeeze release.[11]
  • openSUSE included upstart in version 11.3 Milestone 4, but not as default.[12] systemd replaced Upstart, as the default init system in openSUSE 12.1.[13]

See also [edit]

References [edit]

  1. ^ Remnant, Scott James (2006-08-26). "Upstart in Universe". Netsplit. Retrieved 2009-09-12. 
  2. ^ "Bugs", Launch Pad (605 007), Ubuntu .
  3. ^ "Discussion of design and implementation of Upstart", Ubuntu, Canonical .
  4. ^ "Upstart", About (Ubuntu) 
  5. ^ Fremantle, Maemo, retrieved 2009-08-24 
  6. ^ Palm Pre, Live Journal, retrieved 2009-07-09 
  7. ^ Security Overview: Chromium OS design documents, Google, retrieved 25 November 2009 
  8. ^ Fedora 14 Accepted Features, 2010-07-13, retrieved 2010-07-13 
  9. ^ "Fedora defers systemd to F15". Linux Weekly News. 2010-09-14. Retrieved 2010-09-17. 
  10. ^ Enterprise 6 Beta Release notes, Red Hat  Unknown parameter |dead-link= ignored (help)
  11. ^ Petter Reinholdtsen (2009-09-05), The future of the boot system in Debian, Debian, retrieved 2009-10-12 
  12. ^ OpenSUSE gets an Upstart, The H, 2010-03-26, retrieved 2010-04-04 
  13. ^ Chris von Eitzen (2011-11-16), openSUSE 12.1 arrives with systemd and Btrfs, The H, retrieved 2011-11-16 

External links [edit]