Ich möchte wissen, welche Unterschiede im Verhalten eines unter Ubuntu ausgeführten Daemons, Prozesses und Dienstes bestehen.
Ich möchte wissen, welche Unterschiede im Verhalten eines unter Ubuntu ausgeführten Daemons, Prozesses und Dienstes bestehen.
Antworten:
Daemons - Daemon steht nicht für Disk and Execution Monitor ( http://www.takeourword.com/TOW146/page4.html ). Dies sind die Prozesse, die im Hintergrund ausgeführt werden und nicht interaktiv sind. Sie haben kein steuerndes Terminal.
Sie führen bestimmte Aktionen zu vordefinierten Zeiten oder als Reaktion auf bestimmte Ereignisse aus. In * NIX enden die Namen der Daemons mit d .
Dienste - In Windows werden Daemons als Dienste bezeichnet .
Wenn Sie sich fragen, warum * NIX einen Befehl namens service hat , wird er nur zum Ausführen von Init-Skripten verwendet (Kurzform für die Initialisierung von scriptrunlevel ).
Process - Process ist ein laufendes Programm. Zu einem bestimmten Zeitpunkt kann es entweder laufen , schlafen oder Zombie sein (abgeschlossener Prozess, aber warten, bis der übergeordnete Prozess den Rückgabewert abgerufen hat).
Quellen und weitere Informationen :
Ein Dämon ist ein Hintergrund, nicht-interaktives Programm . Es ist nicht mit der Tastatur und dem Display eines interaktiven Benutzers verbunden. Das Wort Daemon zur Bezeichnung eines Hintergrundprogramms stammt aus der Unix-Kultur. es ist nicht universell.
Ein Dienst ist ein Programm, das über einen prozessübergreifenden Kommunikationsmechanismus (normalerweise über ein Netzwerk) auf Anforderungen anderer Programme reagiert. Ein Dienst ist das, was ein Server bereitstellt. Beispielsweise wird der NFS-Portzuordnungsdienst als separater Portzuordnungsdienst bereitgestellt, der als portmapd
Dämon implementiert ist .
Ein Service muss kein Daemon sein, ist es aber normalerweise. In eine Benutzeranwendung mit einer grafischen Benutzeroberfläche könnte ein Dienst integriert sein, z. B. eine Dateifreigabeanwendung. Ein weiteres Beispiel ist der X Window-Dienst, der alles andere als im Hintergrund ausgeführt wird: Er übernimmt Bildschirm, Tastatur und Zeigegerät. Es handelt sich um einen Dienst, da er auf Anforderungen von Anwendungen (zum Erstellen und Bearbeiten von Fenstern usw.) reagiert, die sich auch an anderer Stelle im Netzwerk befinden können. Der X-Dienst reagiert jedoch auch auf jeden Tastendruck und jede Mausbewegung.
Ein Prozess ist ein oder mehrere Ausführungsthreads zusammen mit den gemeinsam genutzten Ressourcen, von denen die wichtigsten der Adressraum und die Deskriptoren für offene Dateien sind. Ein Prozess erstellt eine Umgebung für diese Ausführungsthreads, die so aussieht, als hätten sie eine ganze Maschine für sich: Es handelt sich um eine virtuelle Maschine.
Innerhalb eines Prozesses sind die Ressourcen anderer Prozesse und des Kernels unsichtbar und nicht direkt zugänglich (zumindest nicht für einen Thread, der User-Space-Code ausführt). Beispielsweise gibt es keine Möglichkeit, auf die geöffneten Dateien eines anderen Prozesses oder auf deren Speicherplatz zu verweisen. Es ist, als ob diese Dinge gar nicht existieren.
Der Prozess und seine Beziehung zum Kernel und anderen Prozessen bilden möglicherweise die wichtigste Abstraktion in Unix-ähnlichen Betriebssystemen. Die Ressourcen des Systems sind in Prozesse unterteilt, und fast alles wird so verstanden, als würde es innerhalb des einen oder anderen Prozesses ablaufen.