Translations:Comparison of init systems/3/en
From Gentoo Wiki
Feature | Init system | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
sysvinit | OpenRC | upstart | systemd | SMF | launchd | Epoch | finit | runit | s6 + s6-rc | BSD rc.d | |
Supported in Gentoo | partially (used by OpenRC) | Yes (default init) | No | Yes | No | No | Yes | No | Yes | No | No |
Package / Bug# | sys-apps/sysvinit | sys-apps/openrc | bug #498376 sys-apps/upstart in unity-gentoo overlay. |
sys-apps/systemd | - | - | sys-apps/epoch | - | sys-process/runit | sys-apps/s6 + sys-apps/s6-rc | - |
Supported platforms | Linux / BSD | Linux + BSD | Linux | Linux | Solaris | MacOSX | Linux | Linux | Linux / BSD / MacOSX | Linux / BSD / MacOSX | BSD |
Main coding language | C | POSIX shell (+ C) | C | C | C | C | C | C | C | C | POSIX shell (+ C) |
Main dependencies | - | init (sysv or BSD) | D-Bus | D-Bus | init(sysv?) | - | libc, /bin/sh | ? | - | skalibs, execline | rcorder |
Init script/service format | single config file | shell scripts | config files + shell fragments | config files (ini) | XML (+ shell scripts) | plist | multiple or single .conf | multiple or single .conf | shell scripts | execline or shell scripts | shell scripts |
Per-service configuration | No | Yes (conf.d) | With in-job mechanisms (normal exit, respawn) | Yes | Yes (service instances) | ? | Yes (v1.1+) | ? | No | No | No |
Running as a daemon | Yes (PID 1) | Yes (PID 1) | Yes (PID 1) | Yes (PID 1) | Yes (invoked) | Yes (PID 1) | Yes (PID 1) | Yes (PID 1) | Yes (PID 1) | Yes (sys-apps/s6-linux-init) | Yes (PID 1) |
Cross-service dependencies/events | No | Yes | Yes | Yes | Yes | No | Yes (basic support, v1.3+) | ? | Yes | Yes | Yes |
Parallel service startup | Yes | Yes (optional) | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes |
Keeping daemons alive | Yes | Yes (optional v0.21+ via supervise-daemon) | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes |
Preferred service file supplier | n/a | Gentoo | Ubuntu | upstream | Solaris | MacOSX | n/a | n/a | Void Linux | n/a | NetBSD, FreeBSD, OpenBSD |
License | GPL v2+ | 2-cl. BSD | GPL v2 | LGPL v2.1+ | ? | Apache License 2.0 | Unlicense | MIT | BSD | ISC | BSD |