Deadlock en SD “Los bloqueos en los sistemas distribuidos son similares a los bloqueos en los sistemas con un procesador, sólo que peores” (Tanenbaum). 2
Deadlock en SD Dos tipos de bloqueos distribuidos: Por comunicación. A envía B envía C envía A. Por recursos. Acceso exclusivo a dispositivos de E/S, archivos, etc. Al final esta distinción es opcional. Un buffer o canal de comunicación puede manejarse como un recurso. 3
Deadlock en SD Estrategias para el manejo: Algoritmo del avestruz. Detección. Prevención. Evitarlos. Nos centraremos en: Detección y prevención. ¿Por qué? 4
Deadlock en SD Definición. Es una situación en la que se encuentran un conjunto de procesos donde cada proceso está esperando por un evento que sólo puede ser producido por otro proceso perteneciente a ese mismo conjunto. 5
Deadlock en SD 6 (Gp:) P1 (Gp:) P4 (Gp:) P3 (Gp:) P2 (Gp:) Nodo 1 (Gp:) Nodo 2
Detección centralizada de deadlock Utilizar un algoritmo centralizado para la detección de bloqueos y tratar de imitar al algoritmo no distribuido. Cada nodo construye su grafo de asignación de recursos. Un nodo especial llamado coordinador, mantiene el grafo de asignación de recursos de todo el sistema. 7
Detección centralizada de deadlock ¿Cómo el grafo global del sistema? Se envía un mensaje al coordinador por cada arista agregada o eliminada en cualquier grafo. Cada proceso puede enviar de manera periódica una lista de aristas agregadas o eliminadas desde la última actualización. El coordinador puede solicitar la información cuando la necesite. 8
Detección centralizada de deadlock 9
Detección centralizada de deadlock Falso bloqueo. Información incompleta o con retraso. Soluciones. Ideas. ¿Cómo funciona su idea? Descríbala. 10
Página siguiente |