La hierarchie pere et fils [:(] !!!!!!!!!!!! HELP!!!!!!!!!!!
laetitia334
Messages postés1Date d'inscriptionsamedi 28 février 2004StatutMembreDernière intervention28 février 2004
-
28 févr. 2004 à 11:31
cs_djl
Messages postés3011Date d'inscriptionjeudi 26 septembre 2002StatutMembreDernière intervention27 novembre 2004
-
28 févr. 2004 à 13:09
bonjour a tous!
j'ai un probleme avec un programme! car je ne comprend pas les termes utilisés:
Main (){
int pid;
printf("je suis le processus initial \n\n");
pid= fork()
if(pid==-1) { printf("creration impossible");
exit(1);}
if(pid==0) { printf("je suis le processus dils n%d et j'ai un pere n %d",getpid,getppid());
exit(0);}
printf("je suis le processus pere n%d et j'ai un fils %d", getpid,pid();
exit(0);
}
Donc sur ce programme je ne comprends pas:
ce que represente pid (je sais que c une variable mais ne voit pas ce que ca represente)
fork: je ne voit pas ce qu'elle cree!
pid==-1 et ==0 : je ne comprend pas pourquoi on prend -1 et 0 ?
pourquoi on met exit (1) et exit (0) ? pourquoi changer de chiffre?
que signifie getpid,getppid(),pid()?
Ca serait super sympa de m'aider !!!
je pense que c tout simple, mais la je bug!!!
je ne comprend pas!
merci d'avance...
cs_bouba
Messages postés518Date d'inscriptiondimanche 2 décembre 2001StatutMembreDernière intervention10 novembre 20073 28 févr. 2004 à 12:32
Salut, tu programmes sous quelle architecture ?? Parce que ses fonctions sont des fonctions UNIX, tu dois êtres sous linux ou mac peut-être, fais un man fork pour avoir des info a propos de ces fonctions.
Sinon, fork créer un nouveau processus, la fonction retourne 0 quand on est dans le processus fils, retourne -1 en cas d'erreur.
getpid() retourne le pid (process ID) du processus courant.
getppid() retourn le pid du pere.
La fonction pid() n'existe pas, tu as du te tromper.
et enfin exit() sert a quitter le programme avec un code d'erreur, en général on met 0 pour indiquer que l'on quitte correctement le programme et une valeur positif qui indique un code d'erreur en cas d'arret du programme pour cause d'erreur.
Voila, si tu as d'autres questions n'hésites pas!!!
Bouba