Information Technology Reference
In-Depth Information
Utilisation de ce schéma au niveau du système d'exploitation
Certains systèmes d'exploitation offrent au niveau du système de gestion de fichiers,
un paramètre permettant de configurer l'ouverture d'un fichier, soit en mode partagé,
soit en mode exclusif. Lorsqu'un processus ouvre un fichier en mode partagé, alors
il est mis en attente pour accéder à ce fichier seulement si un autre processus a ouvert
ce même fichier en mode exclusif. Ce processus se comporte comme un lecteur.
Lorsqu'un processus ouvre un fichier en mode exclusif, alors il est mis en attente
pour accéder à ce fichier seulement si un autre processus a ouvert ce même fichier en
mode exclusif ou en mode partagé. Autrement dit, ce processus accède seul au
fichier, tout comme un rédacteur.
Exemple
Le système MVS permet de configurer l'ouverture d'un fichier en mode exclusif
(OLD) ou en mode partagé (SHR). La ligne suivante, extraite d'un JCL, demande
l'ouverture en mode exclusif du fichier physique MDP1.ARTEMIS.V70.PRO003£.MULTILIB.
000011 //A70DLMA DD DSN = MDP1.ARTEMIS.V70.PRO003£.MULTILIB, DISP = OLD
Un accès concurrent à ce fichier réalisé par un autre job entraîne l'affichage du
message suivant :
DSLIST - Data Sets Matching MDP1.ARTEMIS.V70.PRO003£. Data set in use
indiquant que l'accès au fichier est verrouillé.
12.3.4 Le schéma producteur-consommateur
Présentation du problème
On considère maintenant deux processus communiquant par un tampon de n cases.
D'un côté, un processus producteur produit des messages qu'il dépose dans la case
du tampon pointée par l'index de dépôt i. De l'autre côté, un processus consomma-
teur prélève les messages déposés par le processus producteur dans la case pointée
par l'index de retrait j. Le tampon est géré selon un mode FIFO circulaire en
consommation et en production, c'est-à-dire que :
- le producteur dépose les messages depuis la case 0 jusqu'à la case n - 1, puis
revient à la case 0;
- le consommateur prélève les messages depuis la case 0 jusqu'à la case n - 1, puis
revient à la case 0.
Le processus producteur et le processus consommateur sont totalement indépen-
dants dans le sens où ils s'exécutent chacun à leur propre vitesse. Dans ce cas, pour
qu'aucun message ne soit perdu, les trois règles suivantes doivent être respectées :
- le producteur ne doit pas produire si le tampon est plein ;
- le consommateur ne doit pas faire de retrait si le tampon est vide ;
- le producteur et le consommateur ne doivent jamais travailler dans une même case.
 
 
Search WWH ::




Custom Search