Movatterモバイル変換


[0]ホーム

URL:


Zum Inhalt springen
WikipediaDie freie Enzyklopädie
Suche

Daemon

aus Wikipedia, der freien Enzyklopädie
Der Titel dieses Artikels ist mehrdeutig. Weitere Bedeutungen sind unterDaemon (Begriffsklärung) aufgeführt.

AlsDaemon (englisch, [ˈdiːmən]) – teils auch mitLigaturæDæmon,[1] seltener in der Schreibweise „demon“,[2] englisch fürDämon, und daher teils auch auf Deutsch mit „Dämon“ übersetzt[3] – bezeichnet man unterUnix undUnix-artigen Systemen[4] einenProzess, derim Hintergrund abläuft und bestimmteDienste zur Verfügung stellt.[5]Benutzerinteraktionen finden hierbei nur auf indirektem Weg statt, zum Beispiel überSignale,Pipes und vor allem (Netzwerk-)Sockets.

Ursprünglich wurde der Begriff von den Programmierern desProjekts MAC undCTSS desMIT geprägt. Sie übernahmen den Namen vommaxwellschen Dämon, einem imaginären Wesen aus einem Gedankenexperiment, das ständig im Hintergrund arbeitet und Moleküle sortiert.[6] Maxwells Dämon steht im Einklang mit der Interpretation der griechischen Mythologie eines Dämons als übernatürlichem Wesen, das im Hintergrund arbeitet, ohne eine besondere Neigung zum Guten oder Bösen zu haben. Um sich von dieser alten, religiösen Bedeutung zu distanzieren, wurde beimCTSS und dem ProjektMAC die Schreibweise absichtlich von „englisch„demon““ in „daemon“ geändert.DAEMON wurde auch als Abkürzung für denDiskAndExecutionMONitor desCTSS genutzt, einem Hintergrunddienst fürSicherungsaufgaben. Dabei handelt es sich jedoch um einBackronym.[7]

ÜberMultics wurde diese Terminologie auch inUnix übernommen, sowie in allen Unix-artigen und auch in anderenBetriebssystemen, beispielsweisez/OS.[8] BeiWindows heißen die entsprechenden Programmeservices oderSystemdienste.[5] Ähnlich, aber weit weniger mächtig sindTSR-Programme unterDOS.

Aufruf und Funktionsweise

[Bearbeiten |Quelltext bearbeiten]

Normalerweise werden Daemons nicht durch Benutzerinteraktion gestartet, sondern automatisch beim Wechsel in ein anderesRunlevel bzw. beimSystemstart. Dadurch stellen Daemons einen wesentlichen Anteil des Bootprozesses dar, da bei den meistenUnix-Derivaten die wesentliche Anwendungslogik des Betriebssystems imUserspace und damit in den Daemons abläuft. Typische Daemon-Programme sind bei Unix-Betriebssystemen daher nicht nurServer-Prozesse wie Netzwerkdienste,E-Mail-Server,Datenbankserver undDruckerserver, sondern auch Prozesse, die dieHardwarekonfiguration bzw. -Überwachung vornehmen, wie Sounddaemons oderWechselmedienverwaltungsdaemons. Auch periodische Aufgaben oder zu festgelegten Zeiten anfallende Aufgaben werden mithilfe von Daemons realisiert.

Daemons können jedoch auch wie normaleProzesse in einerShell durch einen Benutzer gestartet werden. Anschließendforken diese Prozesse und erstellen auf diese Weise einen Prozess, der mit der aufrufenden Shell nicht mehr verbunden ist und damit ein direkter Kindprozess desHauptprozessesinit wird. In der Praxis werden viele Daemons so konstruiert, dass sie perKommandozeilenparameter wahlweise sowohl im Hintergrund (detached) laufen können als auch im Vordergrund, d. h. im Kontext derShell, verbleiben können. Oft werdenLogausgaben dann auf derStandardausgabe ausgegeben.

Beispiele

[Bearbeiten |Quelltext bearbeiten]
Etliche Schlüssel-Komponenten desgrafischen Linux Desktops sind eigentlich Daemonen, z. B.D-Bus-,NetworkManager- (hierunetwork genannt),PulseAudio- oderAvahi-Daemon, für die unterschiedlichegrafische Front-Ends verfügbar sind

Um ihren Daemon-Charakter zu bezeichnen, hat der Name vieler solcher Programme ein angehängtes „d“, zum Beispielsyslogd odercupsd.[4][9]

Programm-
name
BeschreibungInteraktion
cronStartet andere Programme zu festgelegten Zeiten.Konfiguration über lokalesCLI-Programmcrontab
atdStartet Programme nach einer festgelegten Zeitspanne.Konfiguration über das lokale Kommandozeilen-Programmat
syslogdNimmt Meldungen von Programmen entgegen und schreibt diese in Dateien oder leitet sie an einen anderen syslogd (z. B. auf einem zentralen Logserver) weiter.Benutzung durch Systemroutinen derC-Standard-Bibliothek wieSyslog, Steuerung durch Signale
sendmailEinMail Transfer Agent, der perSMTP E-Mails über das Netzwerk sendet.Benutzung durch beliebige (SMTP-fähige)E-Mail-Programme über das Netzwerk
lpdNimmt eingehende Daten entgegen, um sie auf einem angeschlossenenDrucker auszudrucken.Benutzung durch ein beliebiges Programm, welches dasLPD-Protokoll unterstützt.
cupsdIm Vergleich zulpd ein leistungsstarkerDruckerserver auf Unix-SystemenBenutzung und Konfiguration durch dieProgrammbibliotheklibcups,Domain-Sockets oder dasIPP; Steuerung und Konfiguration über eineWeb-Benutzeroberfläche oder lokale Kommandozeilen-Programme
httpdEinhttpd ist ein Synonym für einenWebserver, der auf Anfragen imHTTP-Protokoll antwortet.Benutzung durch beliebigenWebbrowser
inetdDer Internetdaemon kann auf mehrerenTCP-Ports Verbindungen entgegennehmen und an spezielle Programme weitergeben, die erst bei Verbindungsaufbau gestartet werden, um Ressourcen zu schonen.Prozess-Signale zur Steuerung desinetd; verschiedenste Clients für die zur Verfügung gestellten Dienste
udevDaemon zum dynamischen Erzeugen von Gerätedateien unter LinuxSteuerung durch lokale Hilfsprogramme wieudevcontrol oderudevinfo

Der Daemon als Logo

[Bearbeiten |Quelltext bearbeiten]
Hauptartikel:BSD-Daemon
Der BSD-Daemon

In Anspielung auf einenDämon haben sich dieBSD-Unix-Derivate einen solchen zum Logo gemacht. Die Figur enthält einige Metaphorik, die Daemons charakterisiert. Sie wurde als Logo für diese Unix-Derivate gewählt, weil Daemons eine zentrale Betriebssystemkomponente darstellen.

Auch die BSD-DerivateFreeBSD undNetBSD hatten den Daemon ursprünglich übernommen, mittlerweile sind alleDerivate jedoch auf ein alternatives oder abgewandeltes Logo umgestiegen.

Siehe auch

[Bearbeiten |Quelltext bearbeiten]

Weblinks

[Bearbeiten |Quelltext bearbeiten]

Einzelnachweise

[Bearbeiten |Quelltext bearbeiten]
  1. Markus Zahn:Unix-Netzwerkprogrammierung mit Threads, Sockets und SSL. Springer, 2006,ISBN 3-540-00299-5, 2. Programmieren mit Unix-Prozessen,S. 96,2.6 Dæmon-Prozesse (eingeschränkte Vorschau in der Google-Buchsuche). 
  2. Harry Henderson:Encyclopedia of Computer Science and Technology. Überarbeitete Auflage. Facts on File Science Library, 2009,ISBN 978-0-8160-6382-6,S. 190 f.,demon (englisch,eingeschränkte Vorschau in der Google-Buchsuche):“The unusual computing termdemon (sometimes spelled daemon) refers to a process (program) that runs in the background, checking for and responding to certain events.” 
  3. Evi Nemeth, Garth Snyder, Scott Seebass, Trent R. Hein:Handbuch zu UNIX-Systemverwaltung. 3. Auflage. Mark+Technik, 2001,ISBN 3-8272-6238-0, 28. Dämonen,S. 940,28.1 init: Der Ur-Prozess (eingeschränkte Vorschau in der Google-Buchsuche – amerikanisches Englisch:UNIX System Administration Handbook. Übersetzt von Judith Muhr): „init ist der erste Prozess, der ausgeführt wird, nachdem das System gebootet wurde, und in vielerlei Hinsicht stellt er den wichtigsten Dämon dar.“ 
  4. abAlex Guerrieri:Hands-On System Programming with Go. Packt Publishing, 2019,ISBN 978-1-78980-407-2, 7: Handling Processes and Daemons,S. 134,Beginning with daemons (englisch,eingeschränkte Vorschau in der Google-Buchsuche):“In Unix, all of the programs that are running in the background are calleddaemons. They usually have a name that ends with the letterd, like sshd or syslogd, and they provide many functionalities of the OS.” 
  5. abMatthew Justice:How Computers Really Work: A Hands-On Guide to the Inner Workings of the Machine. No Starch Press, 2021,ISBN 978-1-71850-066-2, 10: Operating Systems,S. 216,Services and Daemons (englisch,eingeschränkte Vorschau in der Google-Buchsuche):“Operating systems provide the ability for processes to automatically run in the background, without user interaction. Such processes are calledservices on Windows anddaemons on Unix-like systems.” 
  6. Fernando J. Corbató: Take Our Word for It. 23. Januar 2002, abgerufen am 20. August 2006 (englisch). 
  7. Fenwick McKelvey:Internet Daemons. University of Minnesota Press, Minneapolis 2018,ISBN 978-1-4529-5757-9, 1. The Devil We Know: Maxwell’s Demon, Cyborg Sciences, and Flow Control (englisch,eingeschränkte Vorschau in der Google-Buchsuche):“Through Project MAC and CTSS, Maxwell’s demon materialized as digital daemons running in computer hardware. The joke became real when the first daemon entered the infrastructure to control tape backup, and the process was known as the Disk And Execution MONitor, or DAEMON.” 
  8. Paul Rogers:ABCs of z/OS System Programming. IBM Redbooks, Februar 2011, 6: z/OS UNIX, FTP, and security,S. 169,6.7 z/OS UNIX daemons (englisch,eingeschränkte Vorschau in der Google-Buchsuche). 
  9. Vivek Sharma, Manish Varshney, Shantanu Sharma:Design and Implementation of Operating System. Laxmi Publications, 2010,ISBN 978-93-8038641-6, 4: Introduction to Process, 4.3 Scheduling,S. 107,4.2.3 Daemons (englisch,eingeschränkte Vorschau in der Google-Buchsuche):“Daemons are a class of processes that run continuously in the background rather than under the direct control of a user. The term is derived from the ancient Greek word ‘daimon’ which refers to a supernatural being that is intermediate between a human and a god or similar to a ‘guiding spirit’. Daemons are generally easy to recognize because their names end with the letter ‘d’.” 
Abgerufen von „https://de.wikipedia.org/w/index.php?title=Daemon&oldid=260743607
Kategorien:

[8]ページ先頭

©2009-2026 Movatter.jp