INTERBLOQUEOS

Plan your projects and define important tasks and actions

Comienza Ya. Es Gratis
ó regístrate con tu dirección de correo electrónico
Rocket clouds
INTERBLOQUEOS por Mind Map: INTERBLOQUEOS

1. Otras Cuestiones

1.1. Bloqueo de Dos Fases

1.1.1. En ciertas versiones del bloqueo de dos fases, no hay liberación y reinicio si se encuentra un registro bloqueado durante la primera fase. En estas versiones puede ocurrir un interbloqueo. Sin embargo, esta estrategia no es aplicable en general.

1.2. Interbloqueos de Comunicaciones

1.2.1. Puede ocurrir en los sistemas de comunicaciones (como las redes), en donde dos o más procesos se comunican mediante el envío de mensajes. Un arreglo común es que el proceso A envía un mensaje de petición al proceso B, y después se bloquea hasta que B envía de vuelta un mensaje de respuesta.

2. Evitar Interbloqueos

2.1. Trayectorias de los Recursos

2.1.1. Los principales algoritmos para evitar interbloqueos se basan en el concepto de los estados seguros. Antes de describir los algoritmos, haremos una ligera digresión para analizar el concepto de la seguridad, en una forma gráfica y fácil de comprender.

2.2. Estados Seguros e Inseguros

2.2.1. Los algoritmos para evitar interbloqueos que estudiaremos utilizan la información. En cualquier instante hay un estado actual que consiste en E, A, C y R. Se dice que un estado es seguro si hay cierto orden de programación en el que se puede ejecutar cada proceso hasta completarse, incluso aunque todos ellos solicitaran de manera repentina su número máximo de recursos de inmediato.

3. Recursos

3.1. Recursos Apropiativos

3.1.1. Un recurso apropiativo es uno que se puede quitar al proceso que lo posee sin efectos dañinos.

3.2. Recursos No Apropiativos

3.2.1. un recurso no apropiativo es uno que no se puede quitar a su propietario actual sin hacer que el cómputo falle.

4. Prevenir Interbloqueos

4.1. Condición de Exclusión Mutua

4.1.1. Primero vamos a atacar la condición de exclusión mutua. Si ningún recurso se asignara de manera exclusiva a un solo proceso, nunca tendríamos interbloqueos. No obstante, es igual de claro que al permitir que dos procesos escriban en la impresora al mismo tiempo se producirá un caos.

4.2. Condición de Contención y Espera

4.2.1. Una forma de lograr esta meta es requerir que todos los procesos soliciten todos sus recursos antes de empezar su ejecución. Si todo está disponible, al proceso se le asignará lo que necesite y podrá ejecutarse hasta completarse.

4.3. Condición no Apropiativa

4.3.1. También es posible atacar la tercera condición (no apropiativa). Si a un proceso se le ha asignado la impresora y está a la mitad de imprimir su salida, quitarle la impresora a la fuerza debido a que el trazador que necesita no está disponible es algo engañoso como máximo, e imposible en el peor caso.

4.4. Condición de Espera Circular

4.4.1. Sólo queda una condición. La espera circular se puede eliminar de varias formas. Una de ellas es simplemente tener una regla que diga que un proceso tiene derecho sólo a un recurso en cualquier momento.

5. Condiciones para los Interbloqueos de Recursos

5.1. Condición de exclusión mutua

5.1.1. Cada recurso se asigna en un momento dado a sólo un proceso, o está disponible.

5.2. Condición de contención y espera

5.2.1. Los procesos que actualmente contienen recursos que se les otorgaron antes pueden solicitar nuevos recursos.

5.3. Condición no apropiativa

5.3.1. Los recursos otorgados previamente no se pueden quitar a un proceso por la fuerza. Deben ser liberados de manera explícita por el proceso que los contiene.

5.4. Condición de espera circular

5.4.1. Debe haber una cadena circular de dos o más procesos, cada uno de los cuales espera un recurso contenido por el siguiente miembro de la cadena.

6. Definicion

6.1. Es una espera circular permanente de dos o más procesos. Un conjunto de procesos se encuentra en un interbloqueo si cada proceso en el conjunto está esperando un evento que sólo puede ser ocasionado por otro proceso en el conjunto.