2.1.2.2 Les états d'un processus
L'appel des protocoles d'acquisition et de
libération fait changer l'état d'un processus. En effet, un
processus Pi appartenant au système réparti est
doté d'une variable locale Etati qui désigne son
état, tel que :
Etati = {Dehors, Demandeur,
Dedans}.
Initialement, Etati =
Dehors. Le protocole d'acquisition fait passer Etati de
l'état Dehors vers l'état Demandeur, et le protocole de
libération fait passer cet état de Dedans vers Dehors. Le passage
de l'état Demandeur vers l'état Dedans et défini par le
système.[All07] Comme il est montré dans la
figure 2.1
Figure 2.1 - Les
états d'un processus.[All07]
2.1.2.3 Notions de base
1. Ressource critique
C'est une ressource partagée qui ne doit
être accessible que par un seul site à la fois.
2. Section critique
Les sites utilisant les ressources critiques
exécutent une section du code manipulant la ressource appelée
section critique (SC) : un seul processus au plus doit être en section
critique afin de garantir une utilisation correcte de la ressource.
2.1.2.4 Propriétés d'un algorithme
d'exclusion mutuelle
Une solution n'est considérée correcte que
si elle respecte les propriétés suivantes :
- Propriété de sûreté
(safety) : à tout instant, un seul site au plus exécute
la SC.
- Propriété de vivacité
(liveness) : tout site demandeur de la ressource critique doit pouvoir
l'acquérir au bout d'un temps fini.
Un algorithme qui assure ces deux
propriétés assure également l'absence de deux
problèmes, l'interblocage et la famine:
- Interblocage (Deadlock) : est une situation du
système où il y a plusieurs sites à l'état
Demandeur et aucun ne peut accéder à la SC.
- Famine (Starvation) : aura lieu si un site qui
se trouve à l'état Demandeur ne passe jamais à
l'état Dedans.[LK09]
|