Daemon

Un article de Wikipédia, l'encyclopédie libre.

Pour les articles homonymes, voir Démon.

Un démon (ou daemon en anglais, du grec δαιμων) désigne un type de programme informatique, un processus qui s'exécute en arrière-plan plutôt que sous le contrôle direct d'un utilisateur.

Le terme deamon a été créé par les inventeurs d'UNIX. Le retro-acronyme Disk And Execution MONitor (moniteur de disque et d'exécution) a été inventé pour justifier le terme daemon après qu'il fut devenu populaire.

Les démons sont souvent démarrés lors du chargement du système d'exploitation, et servent en général à répondre à des requêtes du réseau, à l'activité du matériel ou à d'autres programmes en exécutant certaines tâches. Sous Microsoft Windows, ces fonctions sont exécutées par des programmes appelés « services », même si le terme « démon » semble de plus en plus utilisé.

D'un côté strictement technique, un démon sous un système UNIX ou UNIX-compatible peut être n'importe quel processus ayant le processus numéro 1 comme parent (init). Tout processus dont le parent meurt sans attendre le statut de son processus enfant est adopté par init. Une façon commune de lancer un démon est donc de « fourcher » (fork) une ou deux fois et de faire arrêter le parent quand l'enfant commence ses opérations normales. Cette façon de faire est quelquefois résumée par la phrase fork off and die (« fourcher et mourir »). Dans l'usage commun, un démon peut être n'importe quel processus fonctionnant en arrière-plan, qu'il soit ou non un enfant de init.

Les démons peuvent aussi être utilisés pour configurer le matériel (comme devfsd sur les systèmes GNU/Linux), exécuter des tâches répétitives (comme crond) ou effectuer une variété d'autres tâches.

[modifier] Anecdote

Les serveurs mail, qui doivent tourner en permanence, sont des démons : regardez les mails que l'on vous renvoie si le destinataire est inexistant, l'expéditeur en est la plupart du temps « mailer-daemon@adresse.pays ».