L3 - IMAE - Préparation IUP GI
Informatique-Unix
TD/TP 2
Parcours préparation IUPGI
But :
Le but de ce TD/TP est de présenter les primitives de gestion des fichiers et des processus
Exercice 1 :
Le but de cet exercice est d'observer les problèmes de partage d'un fichier par 2 processus, selon que l'on réalise les entrées/sorties avec des "appel systèmes" ou des routines standards" :
- écrire un programme qui crée un fichier (fopen, mode w+), écrire quelques caractères (fputc), s'endort (sleep ( n sec)), se repositionne au début du fichier (fseek), et relit ce qu'il a écrit par (fgetc).
- écrire un second programme qui ouvre le fichier (fopen, mode r+), et lit ce qui a été écrit par le programme précédent (fgetc).
Refaire la même chose mais cette fois avec des "appel systèmes".
Exercice 2 :
Ecrire un programme générant un processus fils avec la primitive système fork:
-
le processus fils doit afficher sont numéro (pid) ainsi que le numéro du père à l'aide des primitives systèmes getpid et getppid, puis se termine avec un code retour égal au dernier chiffre du pid.
- le processus père, quand à lui, affiche le pid de son fils, puis attend sa terminaison (primitive wait) et affiche son code de retour.
Exercice 3 :
Ecrire un programme qui :
-
ouvre un fichier de caractères par open, et lit les 5 premiers caractères;
- crée ensuite un processus fils et se met en attente de sa terminaison;
- le processus fils, ayant hérité du file descriptor du fichier ouvert par son père, lit lui aussi 5 caractères;
- enfin à son réveil le pére lit à nouveau 5 caractères.
Les caractères lus dans le fichier seront affichés à l'écran.
Ce document a été traduit de LATEX par
HEVEA.