#algorithmes #fr #distributedalgorithms #sorbonne #mutex
Exclusion mutuelle
Objectif. coordonner des processus se partageant une resource commune.
On va étudier le cas ou les processus sont repartis et ne communiquent que par passage de messages
Transitions d'un processus
états: requesting, not_requesting, critical_section
┌──────────┐ request() ┌─────────┐
│ not_req ├──────────────►│ req │
└──────────┘ └────┬────┘
▲ │
│ │
release() aquire()
│ ┌──────────┐ │
└──────┤ crit_sec │◄──────┘
└──────────┘
Un algorithme d'exclusion mutuelle doit garantir:
- au plus un processus exécutant la section critique
- pas d’interblocage
- pas de famine
algorithmes centralisés 2b8a-distributed-mutex-centralized
algorithmes répartis 2b8b-distributed-mutex-non-centralized