This shows you the differences between two versions of the page.
sde2:laboratoare:05_rust [2023/04/03 22:28] alexandru.radovici |
sde2:laboratoare:05_rust [2023/04/04 06:21] (current) cristiana.andrei [Objectifs] |
||
---|---|---|---|
Line 1: | Line 1: | ||
====== TP 05 - Communication Entre Processus ====== | ====== TP 05 - Communication Entre Processus ====== | ||
+ | |||
+ | <note warning> | ||
+ | Vous devez **accepter** le assignment d'ici et travailler avec ce repository: [[https://classroom.github.com/a/lhtkAUIt|Lab5]] | ||
+ | </note> | ||
+ | |||
===== Objectifs ===== | ===== Objectifs ===== | ||
Line 63: | Line 68: | ||
===== Sujets ===== | ===== Sujets ===== | ||
- | - Écrivez un programme qui crée un pipe et 2 processus (un processus parent et un processus enfant en utlisant [[https://docs.rs/nix/0.23.1/nix/unistd/fn.fork.html|fork]]). Du parent, lisez à partir du clavier un message et envoyez-le par le canal à l'enfant. | + | - Écrivez un programme qui crée un pipe et un processus (processus enfant en utlisant [[https://docs.rs/nix/0.26.2/nix/unistd/fn.fork.html|fork]]). Du parent, lisez à partir du clavier un message et envoyez-le par le canal à l'enfant. |
- Inversez le message dans l'enfant et envoyez-le au parent. | - Inversez le message dans l'enfant et envoyez-le au parent. | ||
- | - Écrivez un programme qui crée un pipe et 2 processus (un processus parent et un processus enfant en utlisant [[https://docs.rs/nix/0.23.1/nix/unistd/fn.fork.html|fork]]). Du parent, lisez à partir du clavier 2 numéros et envoyez-les par le canal à l'enfant. L'enfant fait la somme entre ces 2 nombres et affiche le resultat. | + | - Écrivez un programme qui crée un pipe et un processus (un processus enfant en utlisant [[https://docs.rs/nix/0.26.1/nix/unistd/fn.fork.html|fork]]). Le processus enfant redirige son ecran vers le pipe et exécute ls -l. Le processus parent lit la sortie de l'enfant à partir du pipe et l'affiche. |
- | - Écrivez un programme qui crée un pipe et 2 processus (un processus parent et un processus enfant en utlisant [[https://docs.rs/nix/0.23.1/nix/unistd/fn.fork.html|fork]]). Du parent, lisez à partir du clavier un message et envoyez-les par le canal à l'enfant. L'enfant doit compter toutes les voyelles et renvoyer ce nombre au parent. | + | - Écrivez un programme qui crée un pipe et 2 processus (deux processus enfant en utlisant [[https://docs.rs/nix/0.26.1/nix/unistd/fn.fork.html|fork]] doix fois). Le premier enfant exécute ls -l et le deuxième enfant exécute grep src. Le parent connecte l'affichage du premier enfant au clavier du deuxième enfant avec un pipe. |
- | - Écrivez un programme qui crée un pipe et 2 processus (un processus parent et un processus enfant en utlisant [[https://docs.rs/nix/0.23.1/nix/unistd/fn.fork.html|fork]]). Du parent, lisez à partir du clavier 2 numéros et envoyez-les par le canal à l'enfant. L'enfant fait la division entre ces 2 nombres et renvoye le resultat vers le parent qui doit l'ecrire dans un fichier. //N'oubliez pas de gerer le cas de division par 0!// | + |