2. Es el bloqueo permanente de un conjunto de procesos o hilos de
ejecución en un sistema que compiten por recursos del sistema
o bien se comunican entre ellos
los interbloqueos surgen de necesidades que no pueden ser
satisfechas, por parte de dos o más procesos.
Cuando el primer proceso a su vez
intenta utilizar el otro recurso, se
produce un interbloqueo, donde los dos
procesos esperan la liberación del
recurso que utiliza el otro proceso.
3. La estrategia básica de la prevención del interbloqueo
consiste, a grandes rasgos, en diseñar su sistema de manera
que esté excluya, la posibilidad de interbloqueo.
Los métodos para prevenir el interbloqueo
son de dos tipos:
-Los métodos indirectos que consisten en
impedir la aparición de alguna de las tres
condiciones necesarias para que se de el
interbloqueo.
- Los métodos directos que consisten en
evitar la aparición del circulo vicioso de
espera.
4. Deben darse condiciones para que pueda producirse un
interbloqueo:
1- Exclusión mutua:
Cada recurso esta asignado a
un único proceso o esta
disponible.
2- Retención y espera:
Los procesos que tienen, en
un momento dado, recursos
asignados con anterioridad,
pueden solicitar nuevos
recursos.
3- No apropiación:
Los recursos otorgados con
anterioridad no pueden ser forzados a
dejar un proceso. El proceso que los
posee debe liberarlos en forma
explicita.
4.- Espera circular:
Debe existir una cadena circular de dos o
mas procesos, cada uno de los cuales
espera un recurso poseído por el siguiente
miembro de la cadena.
5. Negación de la exclusividad
Sólo se aplica a recursos compartidos,
es muy difícil poder aplicarlo a todos
los recursos, dado que hay recursos
que son inherentemente de uso no
compartido.
Negación de la contención
Estrategia 1: El proceso pide al
sistema todos los recursos a
necesitar antes de iniciar su proceso
(todo o nada). No siempre se sabe
cuántos recursos se utilizarán.
Estrategia 2: También puede
establecerse que un procesos puede
pedir recursos cuando no tiene
recursos asignados
Negación de la inapropiatividad
Si un proceso que tiene recursos
asignados, pide un nuevo recurso
que no está disponible, deberá
liberar los recursos asignados y
pedirlos posteriormente.
Negación de la espera circular
Se impone un orden a los recursos
FORMAS DE ENFRENTAR
INTERBLOQUEOS
6. Cuando un algoritmo de detección determina que existe un
interbloqueo, existen varias alternativas para tratarlo:
Informar al operador del
sistema
Resolución manual
El sistema rompe el
interbloque y
Se recuperan
automáticamente
Abortar 1 o mas procesos
para romper la espera
circular
Expropiar algunos de lo recursos
de 1 o mas de los procesos
implicados