zion - daemon
Nom
daemon - Exécution en arrière-plan.
Résumé
#include <unistd.h> int daemon (int nochdir , int noclose);
Description
La fonction daemon () sert aux programmes désireux de se détacher de leur terminal de contrôle, et de s'exécuter en arrière plan à la manière des démons système.
Si l'argument nochdir vaut zéro, daemon () modifie le répertoire de travail pour revenir à la racine ("/"). Ceci évite de bloquer un système de fichiers (comme /home) que l'on ne pourrait pas démonter durant son exécution.
Si l'argument noclose vaut zéro, daemon () redirige l'entrée standard, la sortie standard, et la sortie d'erreur vers /dev/null.
Valeur renvoyée
(Cette fonction exécute un fork() , et s'il réussit, le père effectue un _exit (0), ainsi toutes les erreurs éventuelles apparaissent uniquement du côté fils). La fonction daemon () renvoie zéro si elle réussit. Si une erreur se produit, daemon () renvoie -1 et remplit la variable globale errno avec l'un des code d'erreurs renvoyés par les fonctions fork (2) et setsid (2).
Voir aussi
fork (2), setsid (2)
Notes
L'implémentation de la GlibC peut également renvoyer -1 si /dev/null existe mais n'est pas un noeud spécial en mode caractère, avec les numéros mineur et majeur attendus. Dans ce cas, errno ne sera pas remplie.
Historique
La fonction daemon () est apparue en premier dans BSD4.4.
Traduction
Christophe Blaess, 2000-2003.
Poster un commentaire