Interbloqueo
Interbloqueo
SAMCI
Que es un recurso?
Un recurso puede ser un dispositivo de hardware (Por
ejemplo: Archivos, unidades de cinta, etc.).
Un recurso puede ser de software (Por ejemplo:
monitores, semforos, registros de base de datos, etc.)
Un computador tiene muchos recursos que se pueden
adquirir.
Un recurso es cualquier cosa que se puede adquirir,
utilizar y liberar con el transcurso del tiempo
SAMCI
Recursos apropiativos y no
apropiativos
Un recurso apropiativo es todo aquel que se puede
quitar al proceso que lo posee. Ejemplo: La memoria
SAMCI
Recursos no apropiativos
Un recurso no apropiativo: No se puede quitar a su
propietario activo ya que esto puede producir una falla.
Ejemplo: Unidad de CD-ROM.
SAMCI
Interbloqueo
Si un proceso intenta acceder a un recurso y este no
est disponible, el proceso solicitante se ve obligado a
esperar.
Al proceso al que se le ha negado la peticin por lo
general pasa a un estado inactivo y despus intenta de
nuevo.
SAMCI
Interbloqueo
Un conjunto de procesos se encuentra en un estado de
interbloqueo cuando todos sus procesos se encuentran
esperando un recurso que mantiene retenido otro
proceso del grupo.
Fuente:
http://inovasistems.blogspot.com.co/
SAMCI
Condiciones para un
Interbloqueo
Coffman, Elphick y Shoshani establecieron las cuatro condiciones que
deben aplicarse para un interbloqueo (de recursos):
Condicin de exclusin mutua. Cada recurso se asigna en un momento
dado a slo un proceso.
Condicin de contencin y espera. Un proceso que retiene uno o varios
recursos se encuentra esperando por recursos asignados a otros procesos.
Condicin no apropiativa. Los recursos otorgados previamente no se
pueden quitar a un proceso por la fuerza. Deben ser liberados de manera
explcita por el proceso que los contiene.
Condicin de espera circular. Debe haber una cadena circular de dos o
ms procesos, cada uno de los cuales espera un recurso contenido por el
siguiente miembro de la cadena.
SAMCI
Ejemplo Interbloqueo
Exclusin Mutua un solo vehculo ocupa
una seccin
Retener y esperar
No expulsin no puede quitar una
seccin de la calle
Espera circular
SAMCI
Ejemplo Interbloqueo
Los procesos P1, P2 y P3 estn en interbloqueo
SAMCI
Modelado de Interbloqueo
Representacin grfica de recursos
SAMCI
Modelado de Interbloqueo
Un arco o lnea dirigido de un nodo de recurso a un nodo de
proceso significa que el recurso fue solicitado y que es contenido
por ese proceso. (Asignacin)
SAMCI
Modelado de Interbloqueo
Un arco dirigido de un proceso a un recurso significa
que el proceso est actualmente bloqueado, en espera
de ese recurso. (Solicitud)
SAMCI
Modelado de Interbloqueo
Ahora podemos ver un interbloqueo: el proceso C est
esperando al recurso T, que actualmente es contenido
por el proceso D. El proceso D no va a liberar al recurso
T debido a que est esperando el recurso U, contenido
por C. Ambos procesos esperarn para siempre. Un ciclo
en el grfico indica que hay un interbloqueo que
involucra a los procesos y recursos en el ciclo
(suponiendo que hay un recurso de cada tipo). En este
ejemplo, el ciclo es C-T-D-U-C.
SAMCI
Modelado de Interbloqueo
SAMCI
Tratamiento de Interbloqueos
Ignorar el problema
Emplear un algoritmo o protocolo que asegure que
nunca se va a poder producir un interbloqueo.
Prevenir: consiste en conseguir que no puedan
simultneamente las 4 condiciones de Coffman
Evitar: Algoritmo banquero
darse
SAMCI
Prevencin de Interbloqueo
Se trata de eliminar la aparicin de alguna de las cuatro
condiciones necesarias para el interbloqueo.
Exclusin mutua. Depende de la naturaleza del
recurso (Generalmente todos los recursos son no
compartibles), as que esta condicin no se puede
eliminar.
SAMCI
Prevencin de Interbloqueo
Retencin y espera. Hay que garantizar que un proceso
que posee un recurso no pueda pedir otro.
El proceso tiene que pedir todos sus recursos de una vez,
p.ej. antes de empezar a ejecutarse
efecto negativo: muchos recursos retenidos pero no usados.
SAMCI
Prevencin de Interbloqueo
No expropiacin. Permitir que el S.O. desasigne
recursos a un proceso bloqueado.
Si un proceso se bloquea por un recurso, los recursos
retenidos quedan a disposicin de los procesos activos
El proceso bloqueado tiene ahora que esperar por todos
los recursos
Penaliza a los procesos que necesitan muchos recursos
Generalmente no puede aplicarse a recursos tales como
impresoras y unidades de cinta
SAMCI
Prevencin de Interbloqueo
Espera circular: Esta condicin se puede romper si
imponemos un orden total a los recursos, y se obliga a
que los procesos soliciten siempre los recursos
siguiendo dicho orden.
SAMCI
SAMCI
SAMCI
SAMCI
SAMCI
SAMCI
SAMCI
SAMCI