jueves, 22 de noviembre de 2012

Disciplinas de Interbloque

Definición y tratamiento de interbloqueo

Conjunto de procesos tal que cada uno está esperando un recurso
que sólo puede liberar otro proceso del conjunto.

Tratamiento del interbloqueo.

Detección y recuperación: Se detecta y se recupera
Coste de algoritmo + pérdida del trabajo realizado.

Prevención: Asegura que no ocurre fijando reglas
Infrautilización de rec. se deben pedir antes de necesitarlos.

Predicción: Asegura que no ocurre basándose en
conocimiento de necesidades futuras de los procesos
*Dificultad de conocer futuro
*Coste de algoritmo + Infrautilización de recursos

Ignorar el problema:Utilizada por la mayoría de los SS.OO.
Detección del interbloqueo
Algoritmo que comprueba si se cumplen condiciones de interbl.

Condiciones necesarias pero no suficientes (Coffman):
Exclusión mutua.
Retención y espera.
Sin expropiación.
Espera circular.


Si restricciones (1 unid/rec), cond. son necesarias y suficientes:
Ejemplo 2: Ciclo en grafo espera circular interbloqueo
Ejemplo 1: Ciclo en grafo espera circular No interbloq.
Ejemplo 3: Ciclo en grafo espera circular interbloq.

Se necesita condición necesaria y suficiente para sist. general
Condición necesaria y suficiente
Proceso no bloqueado debería devolver recursos en el futuro:
Recursos liberados desbloquearían otros procesos...

Reducción (Red) del sistema por proceso P
Si se pueden satisfacer necesidades de P con r. disponibles
Nuevo estado hipotético donde P ha liberado todos sus rec.

Condición necesaria y suficiente:
secuencia de Red desde estado actual todos los procesosSi no: procesos están en interbloqueo

No hay comentarios:

Publicar un comentario