Vous êtes sur la page 1sur 2

CNAM

MPS NSY104

Anne : 2014-2015
Enseignant : Pierre SWEID

NSY104_TD 03.02-Synchronisation des processus

Sujet : La Confiturerie, Synchronisation de processus par smaphores


Une confiturerie dispose d'une chane pour le remplissage des bocaux.
Un processus Bocal contrle une machine qui assure l'alimentation (l'arriv) des bocaux.
Un autre processus Valve contrle l'ouverture et la fermeture de la valve d'une unit de
remplissage. La valve ne doit tre ouverte qu'aprs l'arriv d'un bocal.
Le processus Valve doit utiliser un processus Horloge pour mesurer un dlai de 30
secondes, aprs lequel il ferme la valve. Il doit alors signaler au processus Bocal que le
remplissage est termin, et qu'il peut enlever le bocal et en placer un nouveau.

Question 1 : On vous demande de complter chacun des processus (en remplaant les lignes
indiques par <<synchro>>) pour assurer l'excution dans le bon ordre des diffrentes parties des 3
processus.
N.B : Vous devez utiliser des smaphores. Pour les smaphores, on possde un type smaphore que
l'on peut initialiser (par exemple: var exm: smaphore := 0 ) et les deux primitives wait() et signal().

Question 2 : On ajoute une autre machine d'alimentation en bocaux, processus Bocal_2. Il faut
s'assurer qu'un seul processus la fois, Bocal ou Bocal_2, place un bocal dans l'unit de
remplissage. De plus, les nouveaux bocaux (processus Bocal_2) sont deux fois plus grands que les
anciens. Le processus Valve doit donc obtenir un dlai deux fois plus long, e.g. 60 sec (pour les
nouveaux bocaux seulement). Pour cela, il devra se synchroniser pour fermer la valve aprs deux
itrations du processus Horloge (le dlai dans Horloge est fixe et ne peut tre chang).

NSY104_TD 03.02-Synchronisation des processus.doc

Page 1 sur 2

CNAM

MPS NSY104

Anne : 2014-2015
Enseignant : Pierre SWEID

NSY104_TD 03.02-Synchronisation des processus

On vous demande de modifier les processus pour assurer une bonne synchronisation pour ce nouveau
systme.

NSY104_TD 03.02-Synchronisation des processus.doc

Page 2 sur 2

Vous aimerez peut-être aussi