SlideShare uma empresa Scribd logo
1 de 20
Programmation Système et Réseau
1
Programmation Système et Réseau
2
Communication Inter
Processus
Chapitre 3
PLAN
3
• Introduction
•Les tubes de communication anonymes
•Les signaux
Introduction
4
 Les systèmes d’exploitation actuels offrent la possibilité
de créer plusieurs processus(threads) concurrents qui
coopèrent pour réaliser des traitements complexes d’une
même application.
 Ces processus s’exécutent sur un même ordinateur
(monoprocesseur) ou multiprocesseur ou sur différents
ordinateurs, et peuvent s’échanger des informations
(communication inter processus).
Introduction
5
 Il existe plusieurs mécanismes de communication
interprocessus :
 Les données communes (variables,
fichiers, segments de données)
 Les signaux
 Les messages.
Introduction
6
Les threads (POSIX) d’un processus partagent :
 La zone de données globales
 Le code
 La table des descripteurs de fichiers du processus.
Lors de la création d’un processus (fork) :
 la table des descripteurs de fichiers est dupliquée
 Les processus créateur et créé partageront le même pointeur de
fichier pour chaque fichier déjà ouvert lors de la création.
Les tubes de communications unix
7
Définition:
Les tubes (pipes) de communications permettent entre deux
ou plusieurs processus s’exécutant sur une même machine
d’échanger des informations.
Deux types :
 Les tubes anonymes
 Les tubes nommés, qui ont une existence dans
le systèmes de fichiers : Donc un chemin
d’accès
Les tubes Anonymes : Création
8
Un tube de communication est créé par l’appel système :
int pipe(int p[2])
Cette appel système crée deux descripteurs de fichiers, il
retourne, dans p, les descripteurs de fichiers créés.
• p[0] : contient le descripteur réservés aux
lectures à partir du tube.
• p[1] : contient le descripteur réservés aux
écritures dans le tube.
Les tubes Anonymes : Création
9
Les descripteurs crées sont ajoutés aux tables de
descripteurs de fichiers du processus appelant.
Seul le processus créateur du tube et ses descendants
peuvent accéder au tube. (Duplication de la table de
descripteurs de fichiers).
Si le tube n’est pas créé: manque d’espace, l’appel système
renvoie -1, sinon il retourne la valeur 0.
L’accès au tubes se fait via les descripteurs de fichiers.
Les tubes Anonymes : Création
10
Communications unidirectionnels:
Les tubes Anonymes
11
Communications unidirectionnels:
Les tubes Anonymes
12
Communications unidirectionnels:
Les tubes anonymes sont, en général, utilisés entre un
processus père et son fils.
Scénario:
Père : Crée un tube.
Père : Crée un ou plusieurs fils
Père Lecteur
Fils Ecrivain
Ecrivain : ferme le fichier non utilisé : de lecture.
Lecteur : Ferme le fichier non utilisé : d’écriture
Les processus (lecteur et écrivain) communiquent en
utilisant les primitives read et write.
Les tubes Anonymes
13
Les tubes Anonymes
14
Communications unidirectionnels:
Exemple 1:
#include<sys/types.h>
#include<sys/wait.h>
#include<unistd.h>
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#define R 0
#define W 1
int main()
{
int pid;
int fd[2];
char message[100];
int Nboctects;
char* phrase="VOICI MON MESSAGE POUR TOI PERE";
system("clear");
Les tubes Anonymes
15
Communications unidirectionnels:
Exemple :
printf("_____________________________________________n");
printf("ttProcessus Courant:: %dn",(int)getpid());
printf("_____________________________________________n");
if (pipe(fd) == -1)
{
perror ("Creation du pipe a échoué ");
exit(1);
}
pid=fork();
if(!pid)
{
close(fd[0]);//fermeture du fichier de lecture par le fils
printf("tttttt+++++++++++++++++++++++++++++++++++++++e[mn");
printf("ttttttt e[29m Processus FILS:: %dn",(int)getpid());
printf("tttttt+++++++++++++++++++++++++++++++++++++++n");
printf("tttttt e[29mProcessus FILS::PERE JE T'ENVOIE UN MESSAGEn");
Les tubes Anonymes
16
Communications unidirectionnels:
Exemple :
if (write(fd[1],phrase,strlen(phrase)+1)== -1)
{
perror("write : Ecriture dans le pipe à échoué ");
exit(4);
}
close(fd[W]);//fermeture du fichier d'écriture par le fils
//sleep(2);
exit(3);
}
printf("%c[%d;%dm J'attends la terminaison du fils%c[%dmn",27,1,33,27,0);
wait(NULL);
close(fd[1]);//fermeture du fichier de lecture par le pere
Les tubes Anonymes
17
Communications unidirectionnels:
Exemple :
if (( Nboctects = read (fd[0],message, 100)) == -1)
{
perror ("read : Lecture échoué ");
exit(5);
}
message[Nboctects]='0';
printf("%c[%d;%dmMESSAGE RECU :: nboctets = %d Message=
%s%c[%dmn",27,1,33,Nboctects,message,27,0);
close(fd[R]);//fermeture du fichier d'écriture par le pere
return 0;
}
Les tubes Anonymes
18
Communications unidirectionnels:
Redirection des entrées standards et des sorties standards
La duplication de descripteur permet à un processus de créer
un nouveau descripteur (dans la table de descripteur )
synonyme d’un descripteur déjà existant.
#include<unistd.h>
int dup(int desc);
int dup2(int desc1, int desc2);
dup crée et retourne un descripteur synonyme à desc, le
numéro associé au descripteur crée est le plus petit
descripteur disponible dans la table des descripteurs des
fichiers du processus
dup2 transforme le desc2 à un descripteur synonyme au
descripteur desc1
Les tubes Anonymes
19
Communications unidirectionnels:
Redirection des entrées standards et des sorties standards
Les fonctions dup et dup2 permettent la redirection des
entrées sorties vers les tubes de communications.
who wc
Les tubes Anonymes
20
Communications unidirectionnels:
EXERCICE
On veut établir, en utilisant les tubes nommés, une
communication de type anneau unidirectionnel entre trois
processus fils. Pour ce faire, la sortie standard de l’un doit être
redirigée vers l’entrée standard d’un autre.

Mais conteúdo relacionado

Mais procurados

Projet de fin d etudes
Projet de fin d etudesProjet de fin d etudes
Projet de fin d etudes
3azwa
 
Cour systeme d'exploitation sghaier anouar
Cour systeme d'exploitation sghaier anouarCour systeme d'exploitation sghaier anouar
Cour systeme d'exploitation sghaier anouar
Anouar Sghaier
 

Mais procurados (20)

Synchronisation sous systeme linux
Synchronisation sous systeme linuxSynchronisation sous systeme linux
Synchronisation sous systeme linux
 
Cours complet Base de donne Bac
Cours complet Base de donne Bac Cours complet Base de donne Bac
Cours complet Base de donne Bac
 
Système d’exploitation: Principe
Système d’exploitation: PrincipeSystème d’exploitation: Principe
Système d’exploitation: Principe
 
Rapport Windows Serveur 2008 "Active Directory Management"
Rapport Windows Serveur 2008 "Active Directory Management"Rapport Windows Serveur 2008 "Active Directory Management"
Rapport Windows Serveur 2008 "Active Directory Management"
 
Réseaux informatiques: Reseau Local LAN
Réseaux informatiques: Reseau Local  LANRéseaux informatiques: Reseau Local  LAN
Réseaux informatiques: Reseau Local LAN
 
Projet de fin d etudes
Projet de fin d etudesProjet de fin d etudes
Projet de fin d etudes
 
Support du cours : Systèmes d'exploitation 2 (linux)
Support du cours : Systèmes d'exploitation 2 (linux)Support du cours : Systèmes d'exploitation 2 (linux)
Support du cours : Systèmes d'exploitation 2 (linux)
 
Expose linux gestion des processus
Expose linux  gestion des processusExpose linux  gestion des processus
Expose linux gestion des processus
 
Rapport Administration des systémes Linux (Shells bash)
Rapport Administration des systémes Linux (Shells bash)Rapport Administration des systémes Linux (Shells bash)
Rapport Administration des systémes Linux (Shells bash)
 
Admin reseaux sous linux cours 3
Admin reseaux sous linux   cours 3Admin reseaux sous linux   cours 3
Admin reseaux sous linux cours 3
 
Tp 1
Tp 1Tp 1
Tp 1
 
Telecharger Exercices corrigés PL/SQL
Telecharger Exercices corrigés PL/SQLTelecharger Exercices corrigés PL/SQL
Telecharger Exercices corrigés PL/SQL
 
Cour systeme d'exploitation sghaier anouar
Cour systeme d'exploitation sghaier anouarCour systeme d'exploitation sghaier anouar
Cour systeme d'exploitation sghaier anouar
 
Windows server 2012 r2
Windows server 2012 r2Windows server 2012 r2
Windows server 2012 r2
 
Travaux Dirigée: Notions de bases dans les réseaux
Travaux Dirigée: Notions de bases dans les réseauxTravaux Dirigée: Notions de bases dans les réseaux
Travaux Dirigée: Notions de bases dans les réseaux
 
Introduction_Reseau.ppt
Introduction_Reseau.pptIntroduction_Reseau.ppt
Introduction_Reseau.ppt
 
Administration réseaux sous linux cours 1
Administration réseaux sous linux   cours 1Administration réseaux sous linux   cours 1
Administration réseaux sous linux cours 1
 
Tp n 6 linux
Tp n 6 linuxTp n 6 linux
Tp n 6 linux
 
Supports de stockage
Supports de stockageSupports de stockage
Supports de stockage
 
Access tables
Access tablesAccess tables
Access tables
 

Semelhante a Chap3 Communication Inter Processus.pptx

Processus pére fils
Processus pére filsProcessus pére fils
Processus pére fils
Selman Dridi
 
Cmd dos sous windows
Cmd dos sous windowsCmd dos sous windows
Cmd dos sous windows
Selman Dridi
 
Manipulation_des_fichiers_en_C.ppsx
Manipulation_des_fichiers_en_C.ppsxManipulation_des_fichiers_en_C.ppsx
Manipulation_des_fichiers_en_C.ppsx
YallaHabibi5
 
Gestion d'E_S - Sérialisation.pdf
Gestion d'E_S - Sérialisation.pdfGestion d'E_S - Sérialisation.pdf
Gestion d'E_S - Sérialisation.pdf
MadaniAhlem2
 

Semelhante a Chap3 Communication Inter Processus.pptx (20)

Tubes.pdf
Tubes.pdfTubes.pdf
Tubes.pdf
 
Rapport des Travaux Pratiques UNIX
Rapport des Travaux Pratiques UNIXRapport des Travaux Pratiques UNIX
Rapport des Travaux Pratiques UNIX
 
05_ProgrammationSystemeLinux_Tubes.pdf
05_ProgrammationSystemeLinux_Tubes.pdf05_ProgrammationSystemeLinux_Tubes.pdf
05_ProgrammationSystemeLinux_Tubes.pdf
 
Petit precis des_commandes_unix_utiles_a_ubuntu
Petit precis des_commandes_unix_utiles_a_ubuntuPetit precis des_commandes_unix_utiles_a_ubuntu
Petit precis des_commandes_unix_utiles_a_ubuntu
 
Processus pére fils
Processus pére filsProcessus pére fils
Processus pére fils
 
Cmd dos sous windows
Cmd dos sous windowsCmd dos sous windows
Cmd dos sous windows
 
Unix 1.pdf
Unix 1.pdfUnix 1.pdf
Unix 1.pdf
 
Cours_Linux_S1_Partie 2.pptx
Cours_Linux_S1_Partie 2.pptxCours_Linux_S1_Partie 2.pptx
Cours_Linux_S1_Partie 2.pptx
 
Formation Linux - Initiation
Formation Linux - InitiationFormation Linux - Initiation
Formation Linux - Initiation
 
Ch1 p1
Ch1 p1Ch1 p1
Ch1 p1
 
Formation Informatique base et généralités
Formation Informatique base et généralitésFormation Informatique base et généralités
Formation Informatique base et généralités
 
Notions sur le commandes linux
Notions sur le commandes linux Notions sur le commandes linux
Notions sur le commandes linux
 
Mouhi nous-mêmes informations financières horaires
Mouhi nous-mêmes informations financières horairesMouhi nous-mêmes informations financières horaires
Mouhi nous-mêmes informations financières horaires
 
lpi 101 notes de cours
lpi 101 notes de courslpi 101 notes de cours
lpi 101 notes de cours
 
cours-Linux.PPT
cours-Linux.PPTcours-Linux.PPT
cours-Linux.PPT
 
Manipulation_des_fichiers_en_C.ppsx
Manipulation_des_fichiers_en_C.ppsxManipulation_des_fichiers_en_C.ppsx
Manipulation_des_fichiers_en_C.ppsx
 
Manip fichier
Manip fichierManip fichier
Manip fichier
 
Manipulation des fichiers en C.pptx
Manipulation des fichiers en C.pptxManipulation des fichiers en C.pptx
Manipulation des fichiers en C.pptx
 
Gestion d'E_S - Sérialisation.pdf
Gestion d'E_S - Sérialisation.pdfGestion d'E_S - Sérialisation.pdf
Gestion d'E_S - Sérialisation.pdf
 
les Commandes linux/Unix (giants networks)
les Commandes linux/Unix (giants networks)les Commandes linux/Unix (giants networks)
les Commandes linux/Unix (giants networks)
 

Último

Bilan énergétique des chambres froides.pdf
Bilan énergétique des chambres froides.pdfBilan énergétique des chambres froides.pdf
Bilan énergétique des chambres froides.pdf
AmgdoulHatim
 
Copie de Engineering Software Marketing Plan by Slidesgo.pptx.pptx
Copie de Engineering Software Marketing Plan by Slidesgo.pptx.pptxCopie de Engineering Software Marketing Plan by Slidesgo.pptx.pptx
Copie de Engineering Software Marketing Plan by Slidesgo.pptx.pptx
ikospam0
 

Último (19)

Bilan énergétique des chambres froides.pdf
Bilan énergétique des chambres froides.pdfBilan énergétique des chambres froides.pdf
Bilan énergétique des chambres froides.pdf
 
GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI DẠY BUỔI 2) - TIẾNG ANH 6, 7 GLOBAL SUCCESS (2...
GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI DẠY BUỔI 2) - TIẾNG ANH 6, 7 GLOBAL SUCCESS (2...GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI DẠY BUỔI 2) - TIẾNG ANH 6, 7 GLOBAL SUCCESS (2...
GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI DẠY BUỔI 2) - TIẾNG ANH 6, 7 GLOBAL SUCCESS (2...
 
Neuvaine de la Pentecôte avec des textes de saint Jean Eudes
Neuvaine de la Pentecôte avec des textes de saint Jean EudesNeuvaine de la Pentecôte avec des textes de saint Jean Eudes
Neuvaine de la Pentecôte avec des textes de saint Jean Eudes
 
les_infections_a_streptocoques.pptkioljhk
les_infections_a_streptocoques.pptkioljhkles_infections_a_streptocoques.pptkioljhk
les_infections_a_streptocoques.pptkioljhk
 
RAPPORT DE STAGE D'INTERIM DE ATTIJARIWAFA BANK
RAPPORT DE STAGE D'INTERIM DE ATTIJARIWAFA BANKRAPPORT DE STAGE D'INTERIM DE ATTIJARIWAFA BANK
RAPPORT DE STAGE D'INTERIM DE ATTIJARIWAFA BANK
 
Les roches magmatique géodynamique interne.pptx
Les roches magmatique géodynamique interne.pptxLes roches magmatique géodynamique interne.pptx
Les roches magmatique géodynamique interne.pptx
 
CompLit - Journal of European Literature, Arts and Society - n. 7 - Table of ...
CompLit - Journal of European Literature, Arts and Society - n. 7 - Table of ...CompLit - Journal of European Literature, Arts and Society - n. 7 - Table of ...
CompLit - Journal of European Literature, Arts and Society - n. 7 - Table of ...
 
Apolonia, Apolonia.pptx Film documentaire
Apolonia, Apolonia.pptx         Film documentaireApolonia, Apolonia.pptx         Film documentaire
Apolonia, Apolonia.pptx Film documentaire
 
Copie de Engineering Software Marketing Plan by Slidesgo.pptx.pptx
Copie de Engineering Software Marketing Plan by Slidesgo.pptx.pptxCopie de Engineering Software Marketing Plan by Slidesgo.pptx.pptx
Copie de Engineering Software Marketing Plan by Slidesgo.pptx.pptx
 
Cours Généralités sur les systèmes informatiques
Cours Généralités sur les systèmes informatiquesCours Généralités sur les systèmes informatiques
Cours Généralités sur les systèmes informatiques
 
L'expression du but : fiche et exercices niveau C1 FLE
L'expression du but : fiche et exercices  niveau C1 FLEL'expression du but : fiche et exercices  niveau C1 FLE
L'expression du but : fiche et exercices niveau C1 FLE
 
Formation qhse - GIASE saqit_105135.pptx
Formation qhse - GIASE saqit_105135.pptxFormation qhse - GIASE saqit_105135.pptx
Formation qhse - GIASE saqit_105135.pptx
 
Echos libraries Burkina Faso newsletter 2024
Echos libraries Burkina Faso newsletter 2024Echos libraries Burkina Faso newsletter 2024
Echos libraries Burkina Faso newsletter 2024
 
Formation échiquéenne jwhyCHESS, parallèle avec la planification de projet
Formation échiquéenne jwhyCHESS, parallèle avec la planification de projetFormation échiquéenne jwhyCHESS, parallèle avec la planification de projet
Formation échiquéenne jwhyCHESS, parallèle avec la planification de projet
 
Intégration des TICE dans l'enseignement de la Physique-Chimie.pptx
Intégration des TICE dans l'enseignement de la Physique-Chimie.pptxIntégration des TICE dans l'enseignement de la Physique-Chimie.pptx
Intégration des TICE dans l'enseignement de la Physique-Chimie.pptx
 
L application de la physique classique dans le golf.pptx
L application de la physique classique dans le golf.pptxL application de la physique classique dans le golf.pptx
L application de la physique classique dans le golf.pptx
 
Télécommunication et transport .pdfcours
Télécommunication et transport .pdfcoursTélécommunication et transport .pdfcours
Télécommunication et transport .pdfcours
 
python-Cours Officiel POO Python-m103.pdf
python-Cours Officiel POO Python-m103.pdfpython-Cours Officiel POO Python-m103.pdf
python-Cours Officiel POO Python-m103.pdf
 
Conférence Sommet de la formation 2024 : Développer des compétences pour la m...
Conférence Sommet de la formation 2024 : Développer des compétences pour la m...Conférence Sommet de la formation 2024 : Développer des compétences pour la m...
Conférence Sommet de la formation 2024 : Développer des compétences pour la m...
 

Chap3 Communication Inter Processus.pptx

  • 2. Programmation Système et Réseau 2 Communication Inter Processus Chapitre 3
  • 3. PLAN 3 • Introduction •Les tubes de communication anonymes •Les signaux
  • 4. Introduction 4  Les systèmes d’exploitation actuels offrent la possibilité de créer plusieurs processus(threads) concurrents qui coopèrent pour réaliser des traitements complexes d’une même application.  Ces processus s’exécutent sur un même ordinateur (monoprocesseur) ou multiprocesseur ou sur différents ordinateurs, et peuvent s’échanger des informations (communication inter processus).
  • 5. Introduction 5  Il existe plusieurs mécanismes de communication interprocessus :  Les données communes (variables, fichiers, segments de données)  Les signaux  Les messages.
  • 6. Introduction 6 Les threads (POSIX) d’un processus partagent :  La zone de données globales  Le code  La table des descripteurs de fichiers du processus. Lors de la création d’un processus (fork) :  la table des descripteurs de fichiers est dupliquée  Les processus créateur et créé partageront le même pointeur de fichier pour chaque fichier déjà ouvert lors de la création.
  • 7. Les tubes de communications unix 7 Définition: Les tubes (pipes) de communications permettent entre deux ou plusieurs processus s’exécutant sur une même machine d’échanger des informations. Deux types :  Les tubes anonymes  Les tubes nommés, qui ont une existence dans le systèmes de fichiers : Donc un chemin d’accès
  • 8. Les tubes Anonymes : Création 8 Un tube de communication est créé par l’appel système : int pipe(int p[2]) Cette appel système crée deux descripteurs de fichiers, il retourne, dans p, les descripteurs de fichiers créés. • p[0] : contient le descripteur réservés aux lectures à partir du tube. • p[1] : contient le descripteur réservés aux écritures dans le tube.
  • 9. Les tubes Anonymes : Création 9 Les descripteurs crées sont ajoutés aux tables de descripteurs de fichiers du processus appelant. Seul le processus créateur du tube et ses descendants peuvent accéder au tube. (Duplication de la table de descripteurs de fichiers). Si le tube n’est pas créé: manque d’espace, l’appel système renvoie -1, sinon il retourne la valeur 0. L’accès au tubes se fait via les descripteurs de fichiers.
  • 10. Les tubes Anonymes : Création 10 Communications unidirectionnels:
  • 12. Les tubes Anonymes 12 Communications unidirectionnels: Les tubes anonymes sont, en général, utilisés entre un processus père et son fils. Scénario: Père : Crée un tube. Père : Crée un ou plusieurs fils Père Lecteur Fils Ecrivain Ecrivain : ferme le fichier non utilisé : de lecture. Lecteur : Ferme le fichier non utilisé : d’écriture Les processus (lecteur et écrivain) communiquent en utilisant les primitives read et write.
  • 14. Les tubes Anonymes 14 Communications unidirectionnels: Exemple 1: #include<sys/types.h> #include<sys/wait.h> #include<unistd.h> #include<stdio.h> #include<string.h> #include<stdlib.h> #define R 0 #define W 1 int main() { int pid; int fd[2]; char message[100]; int Nboctects; char* phrase="VOICI MON MESSAGE POUR TOI PERE"; system("clear");
  • 15. Les tubes Anonymes 15 Communications unidirectionnels: Exemple : printf("_____________________________________________n"); printf("ttProcessus Courant:: %dn",(int)getpid()); printf("_____________________________________________n"); if (pipe(fd) == -1) { perror ("Creation du pipe a échoué "); exit(1); } pid=fork(); if(!pid) { close(fd[0]);//fermeture du fichier de lecture par le fils printf("tttttt+++++++++++++++++++++++++++++++++++++++e[mn"); printf("ttttttt e[29m Processus FILS:: %dn",(int)getpid()); printf("tttttt+++++++++++++++++++++++++++++++++++++++n"); printf("tttttt e[29mProcessus FILS::PERE JE T'ENVOIE UN MESSAGEn");
  • 16. Les tubes Anonymes 16 Communications unidirectionnels: Exemple : if (write(fd[1],phrase,strlen(phrase)+1)== -1) { perror("write : Ecriture dans le pipe à échoué "); exit(4); } close(fd[W]);//fermeture du fichier d'écriture par le fils //sleep(2); exit(3); } printf("%c[%d;%dm J'attends la terminaison du fils%c[%dmn",27,1,33,27,0); wait(NULL); close(fd[1]);//fermeture du fichier de lecture par le pere
  • 17. Les tubes Anonymes 17 Communications unidirectionnels: Exemple : if (( Nboctects = read (fd[0],message, 100)) == -1) { perror ("read : Lecture échoué "); exit(5); } message[Nboctects]='0'; printf("%c[%d;%dmMESSAGE RECU :: nboctets = %d Message= %s%c[%dmn",27,1,33,Nboctects,message,27,0); close(fd[R]);//fermeture du fichier d'écriture par le pere return 0; }
  • 18. Les tubes Anonymes 18 Communications unidirectionnels: Redirection des entrées standards et des sorties standards La duplication de descripteur permet à un processus de créer un nouveau descripteur (dans la table de descripteur ) synonyme d’un descripteur déjà existant. #include<unistd.h> int dup(int desc); int dup2(int desc1, int desc2); dup crée et retourne un descripteur synonyme à desc, le numéro associé au descripteur crée est le plus petit descripteur disponible dans la table des descripteurs des fichiers du processus dup2 transforme le desc2 à un descripteur synonyme au descripteur desc1
  • 19. Les tubes Anonymes 19 Communications unidirectionnels: Redirection des entrées standards et des sorties standards Les fonctions dup et dup2 permettent la redirection des entrées sorties vers les tubes de communications. who wc
  • 20. Les tubes Anonymes 20 Communications unidirectionnels: EXERCICE On veut établir, en utilisant les tubes nommés, une communication de type anneau unidirectionnel entre trois processus fils. Pour ce faire, la sortie standard de l’un doit être redirigée vers l’entrée standard d’un autre.