Programmation systéme
victoria ghabri
Messages postés
95
Date d'inscription
Statut
Membre
Dernière intervention
-
victoria ghabri Messages postés 95 Date d'inscription Statut Membre Dernière intervention -
victoria ghabri Messages postés 95 Date d'inscription Statut Membre Dernière intervention -
Bonjour, je suis débuttante en prorammation systéme ,voici un code que j'ai executer ,et que j'ai cru bien comprendre . Je vous montre le code et le resultat et aprés je poserais ma question :
le code ************
#include <stdlib.h>
#include <stdio.h>
#include <unistd.h>
int main(void)
{
pid_t pid_fils;
pid_fils = fork();
if (pid_fils == -1)
{
puts("Erreur de création du nouveau processus");
exit (1);
}
if (pid_fils == 0)
{
printf("Nous sommes dans le fils\n");
/* la fonction getpid permet de connaître son propre PID */
printf("Le PID du fils est \%d\n", getpid());
/* la fonction getppid permet de connaître le PPID
(PID de son père) */
printf("Le PID de mon père (PPID) est \%d", getppid());
}
else
{
printf("Nous sommes dans le père\n");
printf("Le PID du fils est \%d\n", pid_fils);
printf("Le PID du père est \%d\n", getpid());
printf("PID du grand-père : \%d", getppid());
}
return 0;
}
**********fin code **********************
**************Resultat*************
amina@amina-Inspiron-N5110:~$ gcc fork1.c
amina@amina-Inspiron-N5110:~$ ./a.out
Nous sommes dans le père
Le PID du fils est 2888
Le PID du père est 2887
PID du grand-père : 2825Nous sommes dans le fils
Le PID du fils est 2888
Le PID de mon père (PPID) est 1
*****************
Voila ma question ,apres la creation du processus ,nous nous sommes trouvés dans le pere ,ce que je ne comprend pas pourquoi il afiiche qu'on est aussi dans le fils ??
Merci de m'aider :)))
le code ************
#include <stdlib.h>
#include <stdio.h>
#include <unistd.h>
int main(void)
{
pid_t pid_fils;
pid_fils = fork();
if (pid_fils == -1)
{
puts("Erreur de création du nouveau processus");
exit (1);
}
if (pid_fils == 0)
{
printf("Nous sommes dans le fils\n");
/* la fonction getpid permet de connaître son propre PID */
printf("Le PID du fils est \%d\n", getpid());
/* la fonction getppid permet de connaître le PPID
(PID de son père) */
printf("Le PID de mon père (PPID) est \%d", getppid());
}
else
{
printf("Nous sommes dans le père\n");
printf("Le PID du fils est \%d\n", pid_fils);
printf("Le PID du père est \%d\n", getpid());
printf("PID du grand-père : \%d", getppid());
}
return 0;
}
**********fin code **********************
**************Resultat*************
amina@amina-Inspiron-N5110:~$ gcc fork1.c
amina@amina-Inspiron-N5110:~$ ./a.out
Nous sommes dans le père
Le PID du fils est 2888
Le PID du père est 2887
PID du grand-père : 2825Nous sommes dans le fils
Le PID du fils est 2888
Le PID de mon père (PPID) est 1
*****************
Voila ma question ,apres la creation du processus ,nous nous sommes trouvés dans le pere ,ce que je ne comprend pas pourquoi il afiiche qu'on est aussi dans le fils ??
Merci de m'aider :)))
A voir également:
- Programmation systéme
- Restauration systeme windows 10 - Guide
- Vérificateur des fichiers système - Guide
- Application de programmation - Guide
- Vous avez besoin d'une autorisation de la part de système pour modifier ce dossier - Guide
- Cloner disque systeme - Guide
1 réponse
Sayé j'ai compris maintenant le principe du fork() ainsi que de cet exercice .
Pour ceux qui ont un probléme dans la compréhension du fork() je vous conseille de voire ce lien et de bien ce concentrer ,puis faire une execussion a la main de votre probléme et ça sera un jeux d'enfant
https://forums.commentcamarche.net/forum/affich-37604388-que-fait-un-fork
Pour ceux qui ont un probléme dans la compréhension du fork() je vous conseille de voire ce lien et de bien ce concentrer ,puis faire une execussion a la main de votre probléme et ça sera un jeux d'enfant
https://forums.commentcamarche.net/forum/affich-37604388-que-fait-un-fork