Aide en ligne ESET

Rechercher Français
Sélectionner la rubrique

Interblocage

On parle de blocage lorsque chaque ordinateur attend une ressource attribuée à un autre processus. Dans cette situation, les processus ne sont exécutés que si la ressource requise est détenue par un autre processus qui attend qu'une autre ressource soit libérée. Il est important de prévenir les blocages avant qu'ils ne se produisent. Le planificateur de ressources peut détecter un blocage, ce qui aide le système d'exploitation à garder une trace de toutes les ressources allouées aux différents processus. Un blocage peut se produire si les quatre conditions suivantes sont réunies simultanément :

Aucune action préemptive : une ressource ne peut être libérée que volontairement par le processus qui la détient après que celui-ci ait terminé sa tâche.

Exclusion mutuelle : type spécial de sémaphore binaire utilisé pour contrôler l'accès à la ressource partagée. Il permet de bloquer les tâches actuelles dont la priorité est plus élevée pendant le moins de temps possible.

Retenir et attendre : dans cette condition, les processus doivent être empêchés de retenir une ou plusieurs ressources tout en attendant simultanément une ou plusieurs autres.

Attente circulaire : elle impose un ordonnancement total de tous les types de ressources. L'attente circulaire requiert également que chaque processus demande des ressources dans l'ordre croissant de l'énumération.

 

Il existe trois façons de gérer un interblocage :

Ne pas laisser le système dans un état de blocage.

laisser l'interblocage se produire, puis faire de la préemption pour le gérer lorsqu'il se produit.

Si un blocage se produit, redémarrer le système.