Interbloqueo sistemas operativos

6
INTERBLOQUEO- SISTEMAS OPERATIVOS Edgar Andrey López Clavijo

Transcript of Interbloqueo sistemas operativos

Page 1: Interbloqueo  sistemas operativos

INTERBLOQUEO- SISTEMAS

OPERATIVOS

Edgar Andrey López Clavijo

Page 2: Interbloqueo  sistemas operativos

Interbloqueo

Se dice que dos o más procesos están bloqueados, cuando están suspendidosen espera de un evento que sólo puede ser activado por uno de los procesosbloqueados, y por lo tanto dicho evento nunca sucederá. Para este problemano existe solución

Un ejemplo fácil para entender este contexto es imaginar que existen dosprocesos que compiten por dos recursos que necesitan para funcionar, quesolo pueden ser usados por un proceso a la vez. El primer proceso obtieneel permiso de utilizar uno de los recursos. El segundo proceso toma el otrorecurso, y luego intenta utilizar el recurso ya utilizado por el primerproceso, por lo tanto queda en espera.

Cuando el primer proceso a su vez intenta utilizar el otro recurso, seproduce un interbloqueo, donde los dos procesos esperan la liberación delrecurso que utiliza el otro proceso.

Page 3: Interbloqueo  sistemas operativos

Condiciones necesarias para un

interbloqueo

• Exclusión mutua: Si dos procesos solicitan un recurso exclusivo, uno de los dos quedará suspendido hasta que el favorecido libere el recurso.

• Contención o retención y espera: Si un proceso necesita más de un recurso para realizar su trabajo, conservará en su poder los recursos exclusivos ya asignados, mientras espera por otro recurso adicional.

Page 4: Interbloqueo  sistemas operativos

Condiciones necesarias para un

interbloqueo• Inapropiatividad: Los recursos asignados a un proceso, sólo

pueden ser liberados por el proceso mismo y no pueden serdesasignados por el sistema, cuando otro proceso los necesite.

• Espera circular: Dependencia: Si un proceso P1 está suspendido en espera de un recurso exclusivo que está asignado a otro proceso P2, entonces decimos que P1 depende de P2 (P1 <= P2).

Page 5: Interbloqueo  sistemas operativos

Formas de enfrentar los interbloqueos

• Indiferencia: Problema del usuario y del programador, lograr que no se dé el interbloqueo.

• Prevención: Consisten en condicionar el sistema con una serie de restricciones a los programadores, para que no se den al menos una de las condiciones del interbloqueo, por lo que éste nunca sucederá.

Page 6: Interbloqueo  sistemas operativos

Formas de enfrentar los interbloqueos

• Evitación o predicción: Esta estrategia consiste en dejar que las condiciones para el interbloqueo se puedan dar, pero en el momento de asignar recursos, y se detecte que puede ocurrir un interbloqueo, deniega la asignación del recurso que puede desencadenar el interbloqueo.

• Detección y recuperación: En esta política, el sistema deja que suceda el interbloqueo, pero se implementan procesos encargados de revisar el estado de asignación de los procesos, para detectar los interbloqueo. Una vez detectado, se pueden implementar políticas de recuperación de interbloqueo, que básicamente consisten en matar procesos.