Ca c un exo de fork qu'on a fait en unix cette année.
Je pense que c'est assez simple à comprendre.
Note : Le pid de papa du _Pere_ , c'est le bash avec lequel t'as lancer l'exe.
#include<stdio.h>
#include<unistd.h>
void affiche(int i)
{
int pid;
int ppid;
pid = getpid();
ppid = getppid();
printf("pid courant => %d\n", pid);
printf("pid de papa (ppid) => %d\n", ppid);
printf("i => %d\n\n", i);
}
# Exo fork
Posté par Cereal Killer . En réponse au message Création d'un fork en C, howto. Évalué à 1.
Je pense que c'est assez simple à comprendre.
Note : Le pid de papa du _Pere_ , c'est le bash avec lequel t'as lancer l'exe.
#include<stdio.h>
#include<unistd.h>
void affiche(int i)
{
int pid;
int ppid;
pid = getpid();
ppid = getppid();
printf("pid courant => %d\n", pid);
printf("pid de papa (ppid) => %d\n", ppid);
printf("i => %d\n\n", i);
}
int main()
{
int retour;
int i=1;
retour = fork();
if(retour == -1)
{
printf("erreur au fork !\n");
exit(0);
}
if(retour > 0)
{
i++;
printf("_Pere_\n");
affiche(i);
}
else
{
i--;
printf("_Fils_\n");
affiche(i);
}
}