• Aucun résultat trouvé

Th´eorie et pratique de la concurrence – Master 1 Informatique TP 4 : File FIFO partag´ee en C

N/A
N/A
Protected

Academic year: 2022

Partager "Th´eorie et pratique de la concurrence – Master 1 Informatique TP 4 : File FIFO partag´ee en C"

Copied!
1
0
0

Texte intégral

(1)

Th´ eorie et pratique de la concurrence – Master 1 Informatique TP 4 : File FIFO partag´ ee en C

Exercices

Exercice1: Producteurs-consommateurs avec FIFO et variables de condition Le but est de reprendre l’exercice 3 du TP 2 sur les producteurs consommateurs. Pour rappel on dispose d’une file FIFO partag´ee entre des producteurs et des consommateurs. Le nombre de consommateur est connu. On souhaite que tous les consommateurs aient lu un ´el´ement de la file avant de le retirer. On veut de plus interdire que deux consommateurs lisent en mˆeme temps la mˆeme donn´ee sur la file. On proposera trois impl´ementations diff´erentes.

1. La premi`ere n’autorisera pas un consommateur `a lire une nouvelle donn´ee tant que la derni`ere donn´ee lue n’aura pas ´et´e vue par tous les consommateurs (le dernier consommateur aura donc pour rˆole de r´eveiller les autres consommateurs et de supprimer les ´el´ements de la file).

2. Dans la deuxi`eme impl´ementation, un consommateur pourra lire des donn´ees quand elles sont disponibles et il ne devra donc plus faire attention `a ce qu’une donn´ee soit lue par tout le monde avant de continuer. Pour cette impl´ementation, deux utilisateurs ne pourront pas lire en mˆeme temps `a deux endroits de la file. Toutefois, un utilisateur lib´erera r´eguli`erement le verrou sur la file (typiquement apr`es avoir lu une donn´ee)

3. La troisi`eme impl´ementation ´etendra la deuxi`eme, on voudra de plus que plusieurs consom- mateurs puissent lire en mˆeme temps diff´erents endroits de la file (mais deux consommateurs ne pourront pas lire en mˆeme temps le mˆeme endroit de la file).

Remarques :

– Dans les trois cas, si une nouvelle donn´ee n’est pas disponible pour un consommateur il devra s’endormir et sera r´eveill´e par le producteur.

– Il faut faire attention aux cas limites et en particulier aux pointeurs que vous manipulez. En particulier faire attention `a la manipulation de pointeurs en concurrence. Par exemple, si un consommateur fait un free sur une cellule point´ee par un autre consommateur.

Références

Documents relatifs

On admet pour l’instant qu’` a part le point stationnaire, tous les autres points de la courbe sont bir´ eguliers3. La courbe admet-elle une branche infinie lorsque t

Figure 1 – Images obtenues ` a partir du fichier scene01.txt avant et apr` es implantation de la m´ ethode d’intersection de la classe Sphere.. Cette image correspond ` a une vue de

Remarque : n’utilisez pas la classe Plan de l’application pour calculer l’intersection entre le rayon et le plan support du triangle, car l’intersection obtenue serait r´

– Ilias Amrani hilias.amrani@epfl.chi – Jan Brunner hjan.brunner@epfl.chi – Ratiba Djelid hratiba.djelid@epfl.chi – M´elanie Favre hmelanie.favre@epfl.chi – Nicolas

En quelle ann´ ee le nombre de plaintes pour blessures non mortelles est-il le plus faible.. En quelle ann´ ee le nombre de plaintes pour blessures non mortelles est-il relativement

En d’autres termes, pour tout nombre premier p, il existe ` a isomorphisme pr` es un et un seul groupe d’ordre p, qui est le groupe cyclique (donc ab´ elien) C

Dans un anneau principal, tout id´ eal premier non-nul est maximal (et donc, pour les id´ eaux non-nuls, les notions de premier et de maximal

Contrairement ` a la recherche dans un arbre quelconque o` u il faut parcourir quasiment tous les nœuds de l’arbre pour d´ eterminer si l’´ el´ ement existe, la recherche dans