TD 1 (2020)
TD 1 (2020)
TD 1 (2020)
TD/TP
Gestion des Processus sous Unix
Exercice 1 :
Afin de vous familiariser avec les différentes commandes du shell Unix n’hésitez pas à
utiliser le man.
1) Quel est le processus de pid 1 ? justifier
Exercice 2 :
a) 4
b) 5
c) 6
d) >10
e) aucune des réponses ci-dessus.
Exercice 3:
PP
P1 P2 P3
P4 P5 P6
P7
Exercice 4 :
Combien de processus engendre l’exécution du programme C suivant et en donner
l’arborescence.
# include <unistd .h>
int main ( void )
{
fork () && ( fork () || fork () );
sleep (2);
return 0;
}
Exercice 5:
/**************************************************************/
#include<unistd.h> /* necessaire pour les fonctions exec */
#include <sys/types.h>
#include <unistd.h>
#include <stdio.h>
int main(intargc, char * argv[]) {
pid_tpid;
intattente_fils,attente_pere;
if(argc != 3)
perror("usage: ex1 n m\n");
attente_pere = atoi(argv[1]);
attente_fils = atoi(argv[2]);
switch(pid=fork()) {
case -1:
perror("fork error");
break;
case 0:
sleep(attente_fils);
printf("fils attente finie\n");
break;
default:
sleep(attente_pere);
printf("pere attente finie\n");
break;
}
return 0 ;
}
/**************************************************************/
Exercice 6 :
Exercice 7 :