blob: 67fedfa2384a0fef08540a589370374fb74b5537 [file] [log] [blame]
Scott James Remnantecf322c2007-03-09 16:58:48 +00001Upstart is an event-based replacement for the /sbin/init daemon which
2handles starting of tasks and services during boot, stopping them
3during shutdown and supervising them while the system is running.
4
5It is intended to be suitable for deployment in all Linux
6distributions as a replacement for the venerable sysvinit package.
7
8Feature highlights:
9
Scott James Remnant2e8760b2009-01-26 01:15:21 +000010 * Tasks and Services are started and stopped by events;
Scott James Remnantecf322c2007-03-09 16:58:48 +000011
Scott James Remnant2e8760b2009-01-26 01:15:21 +000012 * Events are generated as tasks and services are started and stopped;
Scott James Remnantecf322c2007-03-09 16:58:48 +000013
Scott James Remnant2e8760b2009-01-26 01:15:21 +000014 * Events may be received from any other process on the system;
Scott James Remnantecf322c2007-03-09 16:58:48 +000015
Scott James Remnant2e8760b2009-01-26 01:15:21 +000016 * Services may be respawned if they die unexpectedly;
Scott James Remnantecf322c2007-03-09 16:58:48 +000017
Scott James Remnant2e8760b2009-01-26 01:15:21 +000018 * Supervision and respawning of daemons which separate from their
19 parent process;
Scott James Remnantecf322c2007-03-09 16:58:48 +000020
Scott James Remnant2e8760b2009-01-26 01:15:21 +000021 * Communication with the init daemon over D-Bus.
Scott James Remnantecf322c2007-03-09 16:58:48 +000022
23
24Dependencies
25------------
26
27Since Upstart's primary usage will be on distributions that utilise
28the user-space event mechanisms only found in recent Linux kernel
29versions, it has been developed to take advantage of other operating
30system and language features that may not be available in older
31releases of the kernel, C library or compiler.
32
33The recommended versions are:
34
Scott James Remnant676c9052008-02-17 16:08:40 +000035 * Linux 2.6.24 or later
Scott James Remnantecf322c2007-03-09 16:58:48 +000036 * GCC 4.1 or later
37 * GNU C Library (glibc) 2.4 or later
38
Scott James Remnant2e8760b2009-01-26 01:15:21 +000039Communication with other processes utilises the D-Bus messaging
40system. In order to query the availibility of the external library,
41the pkg-config tool is used; and in order to generate the D-Bus
Scott James Remnantbf7399d2009-07-09 00:14:49 +010042bindings necessary, the expat XML parsing library will be used.
Scott James Remnant2e8760b2009-01-26 01:15:21 +000043
44The recommended versions are:
45
Scott James Remnant2e8760b2009-01-26 01:15:21 +000046 * pkg-config 0.22
Scott James Remnant0acfdc52009-07-15 11:13:46 +010047 * D-Bus 1.2.16
Scott James Remnantbf7399d2009-07-09 00:14:49 +010048 * expat 2.0.0
Scott James Remnant2e8760b2009-01-26 01:15:21 +000049
Scott James Remnantecf322c2007-03-09 16:58:48 +000050These should all be available from the current release of any modern
51Linux distribution.
52
53For detailed compilation and installation instructions see the INSTALL
54file. If you've checked Upstart out from revision control, or want to
55hack on Upstart, see the HACKING file.