Demon (datamaskin)

En daemon (på engelsk daemon ), i informatikk og mer generelt i multitasking - operativsystemer , er et program som kjører i bakgrunnen , det vil si uten å være under direkte kontroll av brukeren , og gir vanligvis en tjeneste til brukeren. Den brukes hovedsakelig på servere, men også på vanlige PC-er.

Etymologi

CTSS- programmerere laget begrepet daemon i analogi med Maxwells imp, og alle systemer som stammer fra det, inkludert Unix, har arvet terminologien. Demoner er karakterer fra gresk mytologi , hvorav noen utførte oppgaver gudene ikke kunne ivareta, akkurat som demoner utfører bakgrunnsoppgaver som brukeren enten ikke ønsker eller ikke kan ivareta. BSD og noen av dens derivater har tatt i bruk en demon som sin maskot , om enn tegnet som en stereotyp av kristendommens djevel .

En annen mulig etymologi av begrepet er i akronymet " d isk and e execution monitor " (plate og ytelsesmonitor), men det er mer en gjetning .

Beskrivelse og operasjon

Vanligvis har demonene navn som slutter på "d": for eksempel syslogder det daemonen som administrerer systemloggene , det er demonen som dynamisk dhcpdtildeler IP-adressen via DHCP , det er daemonen som kjører HTTPhttpd -tjenesten

Ofte startes demonene når systemet startes opp : generelt har de funksjonen til å svare på visse forespørsler, enten de er nettverk , maskinvare osv. Noen bruk av demoner kan for eksempel være å konfigurere periferiutstyr (som DEVFSLinux- systemer ), utføre oppsatte oppgaver med visse intervaller (som cron ), administrere lyd (som aRts og esd ), administrere versjonskontroll (som CVS eller subversion ) og en rekke andre oppgaver. Generelt tilbyr de derfor brukeren og administratoren visse tjenester.

Tekniske aspekter

I en streng teknisk forstand, anser Unix- systemer som en demon enhver prosess som har init som sin overordnede prosess og som ikke lenger har noen kontrollerende terminal (dvs. en terminal som kan sende signaler direkte til den ). Siden init tar i bruk foreldreløse prosesser , er metoden som vanligvis brukes av programmer for å lage seg selv til daemoner å påkalle gaffelsystemkallet for å lage en underordnet prosess som er et duplikat av dem og deretter avslutte, mens barnet blir foreldreløst (og derfor adoptert av init) , fortsetter kjøringen normalt ved å stenge standardkanaler , påkalle setsid- systemkallet for å logge ut av hver kontrollerende terminal, og endre gjeldende katalog til for ikke å okkupere filsystemer unødvendig (noe som ville forhindre avmontering av dem ). Dette programmeringsspråket er noen ganger beskrevet som " gaffel av og dø ". /

I Unix-systemer er det mulig å gjøre et hvilket som helst ikke-interaktivt program nesten identisk med en daemon ved å kjøre det i bakgrunnen ved å bruke nohup- kommandoen og omdirigere standardinngangen , standardutgangen og standardfeilen til / dev /null ). For eksempel:

bruker @ vert: / bane $ nohup batchscript.sh </ dev / null> / dev / null 2> & 1 & [1] 29788 bruker @ vert: / bane $

Hvor er det:

macOS , som er et Unix -system [1] , har også "demoner". I Mac OS X er det også "tjenester", men de er konseptuelt forskjellige.

I MS-DOS og lignende systemer er analogen av daemoner TSR-programmer ( Terminate and Stay Resident ) .

I Microsoft Windows er programmene som utfører daemon-funksjoner de såkalte Windows-tjenestene .

Merknader

  1. ^ Det åpne merkevareregisteret over sertifiserte produkter , på opengroup.org . Hentet 12. januar 2009 .

Relaterte elementer

Eksterne lenker