systemd

systemd
systemd
Entwickler Lennart Poettering (Red Hat Inc.)
Aktuelle Version 37
(11. Oktober 2011)
Betriebssystem Linux
Programmier­sprache C[1]
Kategorie init-Dienst
Lizenz GNU GPL 2+[2]
(Freie Software)
freedesktop.org/wiki/Software/systemd

systemd ist ein Hintergrundprogramm (Daemon) für Linux-Systeme, das als init-Prozess als erster Prozess (Prozess-ID 1) zum Starten, Überwachen und Beenden weiterer Prozesse dient. systemd ist von Lennart Poettering (Red Hat Inc.) in C[1] geschrieben und wird als freie Software unter der GNU General Public License (GPL) veröffentlicht.[2]

Der Name entspricht mit dem abschließenden „d“ dem für Daemons üblichen Namensschema: systemd ist der Daemon, der das System startet und betreut.

Inhaltsverzeichnis

Technik

systemd ist abwärtskompatibel zu SysVinit-Skripten. Hingegen werden bewusst Features benutzt, die nur auf Linux zur Verfügung stehen, nicht aber auf anderen unixartigen Betriebssystemen. Es kann daher nur auf Systemen mit Linux-Kernel laufen.

Es soll den gegenseitigen Abhängigkeiten von Prozessen besser gerecht werden und so durch mehr Parallelisierung zu einer besseren Auslastung beim Systemstart führen sowie weniger Overhead verursachen als das ältere, klassische SysVinit oder auch das neuere Upstart.

Grundlegendes Konzept dafür ist, weitgehend alle Prozesse gleichzeitig zu starten. Um nicht, wie bei anderen zwar grundsätzlich auf Parallelisierung setzenden Systemen, anhand der in einem Modell erfassten wechselseitigen Abhängigkeiten der Prozesse teilweise noch mit Serialisierung zu arbeiten, werden die D-Bus-Verbindungen und Sockets zur Interprozesskommunikation schon vor dem Start des zugehörigen Dienstes bereitgestellt und vom Kernel eventuell auflaufende Nachrichten bis zur Bereitschaft des Dienstes gepuffert. Ähnliches wird für Anfragen an Dateisysteme mittels autofs bewerkstelligt.

Daneben kann es nur gelegentlich benötigte Dienste ereignisbasiert erst bei Bedarf starten und so bei Systemstart weniger Dienste starten. Damit nimmt es Aufgaben wahr, die bei klassischen Unix-Systemen von inetd übernommen wurden.

Weiterhin sollen Shell-Boot-Skripte langfristig komplett durch potenziell meist erheblich schnelleren kompilierten C-Code ersetzt werden. Statt eines Init-Skripts erhält jeder Dienst eine Konfigurationsdatei, in der unter anderem definiert wird, wie dieser Dienst gestartet wird.

Geschichte

Die Ideen und Konzepte zu systemd entstanden aus Poetterings kritischer Betrachtung aktuell gebräuchlicher init-Systeme wie Upstart und launchd, von denen es grundlegende Ideen übernimmt. Es wurde erstmals am 10. April 2010 veröffentlicht. Als erste Distribution übernimmt Fedora systemd in Version 14 (entgegen ursprünglichen Plänen nur) als optionales Paket und in Version 15 als neuen vorgegebenen init-Dienst.[3][4] openSUSE hat die Übernahme in die für März 2011 zur Freigabe vorgesehene Version 11.4 geplant,[5][6] jedoch aufgrund von Problemen in Version 12.1 (November 2011) verschoben.[7]

Sofern es das mittlerweile recht verbreitete Upstart nicht weitgehend ablöst, ist zumindest ein wesentlicher Einfluss der Ideen auf die Entwicklung von Upstart zu erwarten.[8]

Weblinks

Einzelnachweise

  1. a b systemd. Analysis Summary. Ohloh. Abgerufen am 2011. August 15.
  2. a b Lennart Poettering: License. systemd git. freedesktop.org. Abgerufen am 2011. August 15.
  3. http://fedoraproject.org/wiki/Features/systemd
  4. Systemd soll Linux standardisieren. Abgerufen am 27. Mai 2011.
  5. Andreas Jaeger: systemd – and #osc2010. In: openSUSE Lizards (official developer blogs). Novell, Inc., 8. Oktober 2010, abgerufen am 10. Oktober 2010 (englisch).
  6. Will Stephenson: openSUSE Announces Second 11.4 Development Milestone With New Kernel, OpenOffice, Mesa. In: openSUSE Lizards (official developer blogs). Novell, Inc., 7. Oktober 2010, abgerufen am 10. Oktober 2010 (englisch).
  7. Jos Poortvliet: openSUSE 12.1: All Green! openSUSE.org, 16. November 2011, abgerufen am 17. November 2011 (englisch).
  8. http://www.netsplit.com/2010/04/30/on-systemd/

Wikimedia Foundation.

Игры ⚽ Нужен реферат?

Schlagen Sie auch in anderen Wörterbüchern nach:

  • Systemd — Тип демон инициализации Автор Леннарт Поттеринг Разработчики Леннарт Поттеринг, Кей Сиверс и др. Написана на C Операционная система Linux Первый выпуск 30 апреля 2010 …   Википедия

  • Systemd — est un remplaçant du daemon init system V pour Linux. Il est développé par Lennart Poettering et publié sous licence GPL. systemd est activé par défaut dans Fedora (à partir de la version 15) et Mandriva 2011. Parmi les principales distributions …   Wikipédia en Français

  • Arch Linux — Для термина «Arch» см. другие значения. Не следует путать с Ark Linux. Arch Linux …   Википедия

  • udev — Тип Device node Разработчик Greg Kroah Hartman и Kay Sievers Написана на С Операционная система Linux (ядро) Первый выпуск ноябрь 2003 года Последняя версия 184 (30 мая …   Википедия

  • Upstart — Entwickler Scott Remnant, Canonical Ltd. Aktuelle Version 1.3 (14. Juni 2011) Betriebssystem Unix und unixoide Betriebssysteme Programmier­sprache …   Deutsch Wikipedia

  • Rudolf Brazda — Rudolf Brazda, né le 26 juin 1913 à Brossen (autrefois en Saxe, actuellement dans le Land de Thuringe, en Allemagne), mort le 3 août 2011 à Bantzenheim (France)[1], était le dernier survivant connu de la déportation pour motif …   Wikipédia en Français

  • Upstart — Développeur Scott James Remnant Dernière version …   Wikipédia en Français

  • Fedora — Fedora …   Википедия

  • launchd — ist ein einheitliches Framework zum Starten, Verwalten und Beenden von Daemons, Programmen und Shell Skripten. Eingeführt wurde es mit Mac OS X v10.4/Darwin v8.0 und lizenziert ist es unter der Apache Lizenz. Der bei Apple angestellte Dave… …   Deutsch Wikipedia

  • Direct Rendering Manager — The Direct Rendering Manager (DRM) is a component of the Direct Rendering Infrastructure, a system to provide efficient video acceleration (especially 3D rendering) on Unix like operating systems, e.g. Linux, FreeBSD, NetBSD, and OpenBSD. It… …   Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”