Fork (programmation)
A la recherche d'informations sur Fork (programmation) ? Vous êtes ici : recherche >> Encyclopédie » Fork (programmation)
La fonction fork fait partie des appels système standard d'UNIX (norme POSIX). Cette fonction permet à un processus (un programme en cours d'exécution) de donner naissance à un nouveau processus, par exemple en vue de réaliser un second traitement parallèlement au premier.
Il existe une filiation dans les processus : le créateur d'un nouveau processus est appelé le père et le nouveau processus, le fils. Tous les attributs système du père (par exemple les droits sur le système de fichier) sont transmis au fils, de la même manière que l'héritage. Au démarrage d'un système Unix, un seul processus existe (de numéro 1). Tous les autres processus qui peuvent exister au cours de la vie du système descendent de ce premier processus via des appels système fork successifs.
L'appel système fork fournit une valeur résultat qui est un entier. Le processus pour qui cet entier vaut 0 en déduit qu'il est le processus fils. Le processus pour qui cet entier est non nul en déduit qu'il est le processus père, et l'entier représente l'identifiant de processus (PID) du processus fils.
Chaque processus d'un fork possède son propre espace d'adressage, qu'il est coûteux de dupliquer, même avec des astuces comme le copy on write. Il est parfois avantageux de remplacer les forks par des threads processus légers qui partagent le même espace mémoire... aux risques et périls du programmeur, cependant.
La fonction fork est largement utilisée dans les applications client-serveur avec plusieurs clients simultanés.
Le contenu de cette page (Fork (programmation)) est un minuscule extrait de l'encyclopiédie gratuite en ligne WIKIPEDIA
le webmaster de ce site n'est pas l'auteur de cet article (Fork (programmation)). Vous pouvez retrouver l'original de cet article (Fork (programmation)) à cette adresse et la liste des auteurs
ici
Vous pouvez modifier ou compléter cet article mais également discuter de son contenu (Fork (programmation)) sur le site de WIKIPEDIA France - Contenu (Fork (programmation)) disponible sous GNU Free Documentation License.