Documente Academic
Documente Profesional
Documente Cultură
GRAFO DE ASIGNACIN
DE RECURSOS
INTERBLOQUEO
Muchos de los procesos requieren utilizar recursos de Entrada y Salida al mismo tiempo, en este caso de
produce un Interbloqueo.
El interbloqueo es un problema que afecta a procesos concurrentes que utilizan recursos en un sistema.
Los interbloqueos pueden describirse utilizando un grafo dirigido y bipartito llamado grafo de asignacin
de recursos.
SOLICITA
P1
R1
ASIGNADO
Solicitud
Asignacin
Arista de Declaracin
Pi Rj
Si tenemos un sistema de asignacin de recurso con solo una instancia de cada tipo de recurso,
puede utilizarse una variante del grafo de asignacin de recursos para evitar los interbloqueos.
Adems de las aristas de asignacin y solicitud, existe un nuevo tipo de arista llamada Arista de
Declaracin
Si el grafo de Asignacin de Recursos no tiene CICLOS, entonces ningn proceso del sistema se
encuentra en interbloqueo.
Estado Seguro
No hay interbloqueo.
Estado Inseguro
R1
P2
P1
R2
R1
P2
P1
R2
R1
P2
P1
R2
EXCLUSION MUTUA .- Ningn recurso
Puede ser solicitado por otro proceso
Hasta que este sea liberado
EJEMPLOS
R1
R3
P2
P1
R2
P3
R1
R3
P2
P1
R2
P3
R3
P2
P1
R2
P3
Mltiples instancias.
Cuando un proceso obtiene todos sus recursos debe retomarlos en una cantidad finita de tiempo
ALGORITMO DEL
BANQUERO
Algoritmo de Seguridad
ALGORITMO DE SEGURIDAD
Mx.
Matriz Mximo.
Son las exigencias
mximas de recursospara
cada proceso, ejemplo:
Matriz Necesidad.
Procesos
P0
P1
P2
P3
P4
=
=
Disponible.
Asignacin
Necesidad
Disponible
=
=
Asignacin
Matriz asignacin.
Secuencia segura
P1
P3
P0
P2
P4
Algoritmo de Seguridad
EJEMPLO
ILUSTRATIVO
Ejemplo: Ilustrativo
Considere un sistema con 5 procesos, P0 a P4 y 3 tipos de recursos A,B y C. El tipo de Recurso A tiene
10 ejemplares, B tiene 5 ejemplares y C tiene 7 ejemplares. Suponiendo que, en el instante T se tom
la siguiente instantnea del sistema
Asignacin
Mx.
Disponible
Procesos
P0
P1
P2
Formula n x m
P3
Matriz de 5 x 3
P4
n = # procesos
m = # tipo de recursos
5 Filas, 3 columnas
=
=
=
=
=
Asignacin
Necesidad
Ejemplo: Ilustrativo
Considere un sistema con 5 procesos, P0 a P4 y 3 tipos de recursos A,B y C. El tipo de Recurso A tiene 10
ejemplares, B tiene 5 ejemplares y C tiene 7 ejemplares. Suponiendo que, en el instante T se tom la
siguiente instantnea del sistema
Asignacin
Mx.
Disponible
Procesos
P0
P1
m = # tipo de recursos
P2
Formula n x m
P3
Matriz de 5 x 3
P4
n = # procesos
5 Filas, 3 columnas
=
=
=
=
=
7
3
5
2
3
2
Asignacin
Necesidad
0
2
1
0
0
0
7
1
4
2
3
2
=
=
Ejemplo: Ilustrativo
Considere un sistema con 5 procesos, P0 a P4 y 3 tipos de recursos A,B y C. El tipo de Recurso A tiene 10
ejemplares, B tiene 5 ejemplares y C tiene 7 ejemplares. Suponiendo que, en el instante T se tom la
siguiente instantnea del sistema
Asignacin
Mx.
Disponible
Procesos
P0
P1
m = # tipo de recursos
P2
Formula n x m
P3
Matriz de 5 x 3
P4
n = # procesos
5 Filas, 3 columnas
=
=
=
=
=
7
3
9
5
2
0
3
2
2
Asignacin
Necesidad
0
2
3
1
0
0
0
0
2
7
1
6
4
2
0
3
2
0
=
=
=
Ejemplo: Ilustrativo
Considere un sistema con 5 procesos, P0 a P4 y 3 tipos de recursos A,B y C. El tipo de Recurso A tiene 10
ejemplares, B tiene 5 ejemplares y C tiene 7 ejemplares. Suponiendo que, en el instante T se tom la
siguiente instantnea del sistema
Asignacin
Mx.
Disponible
Procesos
P0
P1
P2
Formula n x m
P3
Matriz de 5 x 3
P4
n = # procesos
m = # tipo de recursos
5 Filas, 3 columnas
Asignacin
Necesidad
P0
P1
P2
P3
1
6
0
2
0
1
2
0
1
P4
Ejemplo: Ilustrativo
Considere un sistema con 5 procesos, P0 a P4 y 3 tipos de recursos A,B y C. El tipo de Recurso A tiene 10
ejemplares, B tiene 5 ejemplares y C tiene 7 ejemplares. Suponiendo que, en el instante T se tom la
siguiente instantnea del sistema
Asignacin
Mx.
Disponible
Procesos
P0
P1
m = # tipo de recursos
P2
Formula n x m
P3
Matriz de 5 x 3
P4
n = # procesos
5 Filas, 3 columnas
Asignacin
Necesidad
P0
P1
P2
P3
P4
Ejemplo: Ilustrativo
Considere un sistema con 5 procesos, P0 a P4 y 3 tipos de recursos A,B y C. El tipo de Recurso A tiene 10
ejemplares, B tiene 5 ejemplares y C tiene 7 ejemplares. Suponiendo que, en el instante T se tom la
siguiente instantnea del sistema
Necesidad
Procesos
P0
Disponible
<
ir al paso 2
4. Si Fin = True para todos los procesos, el
sistema esta en estado seguro.
Procesos A B
P0
Asignacin
Trabajo
A B
B C
Fin
P1
F
F
P2
P3
Ejemplo: Ilustrativo
Considere un sistema con 5 procesos, P0 a P4 y 3 tipos de recursos A,B y C. El tipo de Recurso A tiene
10 ejemplares, B tiene 5 ejemplares y C tiene 7 ejemplares. Suponiendo que, en el instante T se tom
la siguiente instantnea del sistema
1. Sean Trabajo y Fin vectores con longitud m y n,
respectivamente.
Necesidad
Procesos
P0
P1
a) Fin = false
b)Necesidad < Trabajo
3. Trabajo = Trabajo + Asignacin
Disponible
A
<
<
Asignacin
Fin = True
ir al paso 2
4. Si Fin = True para todos los procesos, el sistema esta en
estado seguro.
Secuencia segura
P1
Procesos A B
Asignacin
Trabajo
A B
B C
3 2
P0
P1
+ 2 0
P2
Fin
Ejemplo: Ilustrativo
Considere un sistema con 5 procesos, P0 a P4 y 3 tipos de recursos A,B y C. El tipo de Recurso A tiene
10 ejemplares, B tiene 5 ejemplares y C tiene 7 ejemplares. Suponiendo que, en el instante T se tom
la siguiente instantnea del sistema
1. Sean Trabajo y Fin vectores con longitud m y n,
respectivamente.
Necesidad
Procesos
Disponible
a) Fin = false
b)Necesidad < Trabajo
3. Trabajo = Trabajo + Asignacin
Fin = True
ir al paso 2
4. Si Fin = True para todos los procesos, el sistema esta en
estado seguro.
P1
<
P2
<
Ejemplo: Ilustrativo
Considere un sistema con 5 procesos, P0 a P4 y 3 tipos de recursos A,B y C. El tipo de Recurso A tiene 10
ejemplares, B tiene 5 ejemplares y C tiene 7 ejemplares. Suponiendo que, en el instante T se tom la
siguiente instantnea del sistema
1. Sean Trabajo y Fin vectores con longitud m y n,
respectivamente.
Necesidad
Fin = False
2. Busca una i tal que
Disponible
Procesos
P1
< 3
a) Fin = false
b)Necesidad < Trabajo
3. Trabajo = Trabajo + Asignacin
Fin = True
ir al paso 2
4. Si Fin = True para todos los procesos, el sistema esta en
estado seguro.
Disponible
Secuencia segura
P1
P3
Asignacin
P3
0 1 1 < 5 3 2
Trabajo = Trabajo(Disponible) + Asignacin
Procesos A B
Asignacin
Trabajo
Fin
A B
P0
P1
3 3
+ 2 0
= 5
P2
Ejemplo: Ilustrativo
Considere un sistema con 5 procesos, P0 a P4 y 3 tipos de recursos A,B y C. El tipo de Recurso A tiene
10 ejemplares, B tiene 5 ejemplares y C tiene 7 ejemplares. Suponiendo que, en el instante T se tom
la siguiente instantnea del sistema
1. Sean Trabajo y Fin vectores con longitud m y n,
respectivamente.
Necesida
d
Disponible
Procesos
B C
P1
Trabajo = Disponible
Fin = False
2. Busca una i tal que
a) Fin = false
b)Necesidad < Trabajo
3. Trabajo = Trabajo + Asignacin
<
Fin = True
ir al paso 2
4. Si Fin = True para todos los procesos, el sistema esta en
estado seguro.
P3= Trabajo(Disponible)
0 1 1 < +5Asignacin
3 2
Trabajo
P4
Secuencia segura
P1
P3
Disponible
<
Asignacin
Asignacin
Trabajo
A B
B C
P1
3 3
+ 2 0
P2
P4
Procesos A B
Fin
Ejemplo: Ilustrativo
Considere un sistema con 5 procesos, P0 a P4 y 3 tipos de recursos A,B y C. El tipo de Recurso A tiene
10 ejemplares, B tiene 5 ejemplares y C tiene 7 ejemplares. Suponiendo que, en el instante T se tom
la siguiente instantnea del sistema
1. Sean Trabajo y Fin vectores con longitud m y n,
respectivamente.
Necesida
d
Disponible
Procesos
B C
P0
<
P1
<
Trabajo = Disponible
Fin = False
2. Busca una i tal que
a) Fin = false
b)Necesidad < Trabajo
3. Trabajo = Trabajo + Asignacin
Fin = True
Asignacin
ir al paso 2
4. Si Fin = True para todos los procesos, el sistema esta en
estado seguro.
P3= Trabajo(Disponible)
0 1 1 < +5Asignacin
3 2
Trabajo
P4
4
Disponible
Secuencia segura
P1
P3
P4
P0
Procesos A B
3 1 < 7
Asignacin
A B
3
Trabajo
A
Fin
P0
7 4
5 + 0 1
0 = 7
5 5 T
P1
3 3
+ 2 0
= 5
P2
P3
5 3
2 + 2 1
1 = 7
4 3 T
Ejemplo: Ilustrativo
Considere un sistema con 5 procesos, P0 a P4 y 3 tipos de recursos A,B y C. El tipo de Recurso A tiene
10 ejemplares, B tiene 5 ejemplares y C tiene 7 ejemplares. Suponiendo que, en el instante T se tom
la siguiente instantnea del sistema
1. Sean Trabajo y Fin vectores con longitud m y n,
respectivamente.
Necesida
d
Disponible
Procesos
B C
P0
<
P1
<
P2
<
Trabajo = Disponible
Fin = False
2. Busca una i tal que
a) Fin = false
b)Necesidad < Trabajo
3. Trabajo = Trabajo + Asignacin
Fin = True
ir al paso 2
4. Si Fin = True para todos los procesos, el sistema esta en
estado seguro.
P1
Secuencia segura
P3
P4
P0
P2
Asignacin
P3= Trabajo(Disponible)
0 1 1 < +5Asignacin
3 2
Trabajo
P4
4
Disponible
Procesos A B
P0
P1
P2
P3
7
3
7
5
4
3
5
3
P4
7 4
3 1 < 7
Asignacin
3
Trabajo
A B
5 + 0 1
2 + 2 0
5 + 3 0
2 + 2 1
0
0
2
1
= 7 5
= 5
3
= 10 5
= 7 4
5
2
7
3
+ 0 0
Fin
T
T
T
T
4 5 T
Ejemplo: Ilustrativo
Considere un sistema con 5 procesos, P0 a P4 y 3 tipos de recursos A,B y C. El tipo de Recurso A tiene
10 ejemplares, B tiene 5 ejemplares y C tiene 7 ejemplares. Suponiendo que, en el instante T se tom
la siguiente instantnea del sistema
1. Sean Trabajo y Fin vectores con longitud m y n,
respectivamente.
Asignar los valores iniciales
Trabajo = Disponible
Disponible
Fin = False
2. Busca una i tal que
Procesos A B
a) Fin = false
b)Necesidad < Trabajo
3. Trabajo = Trabajo + Asignacin
Fin = True
ir al paso 2
4. Si Fin = True para todos los procesos, el sistema esta en
estado seguro.
P1
Secuencia segura
P3
P4
P0
P2
Asignacin
Trabajo
A B
0
2
3
2
P0
P1
P2
P3
7
3
7
5
4
3
5
3
5
2
5
2
+
+
+
+
1
0
0
1
0
0
2
1
= 7
= 5
= 10
= 7
P4
7 4
+ 0 0
Fin
5
3
5
4
5
2
7
3
T
T
T
T
4 5 T
ALGORITMO DEL
BANQUERO
Algoritmo de Solicitud de
Recursos
2.
3.
Hacer que el sistema simule haber asignado al proceso P, los recursos que
solicito modificando el estado como sigue.
Disponible = Disponible - Solicitud
Asignacin = Asignacin + Solicitud
Necesidad = Necesidad - Solicitud
EJEMPLO
ILUSTRATIVO
Ejemplo: Ilustrativo. Supongamos ahora que el proceso P1 Solicita un ejemplar adicional del tipo de
recursos A y dos ejemplares del tipo de recurso C, de modo que solicitud = [1,0,2]
Para decidir si esta solicitud se puede satisfacer de inmediato, primero verificamos que Solicitud <
Disponible esto es, que[1,0,2] < [3,3,2] lo cual es cierto. Ahora simulamos que la solicitud se atendi y
llegamos al estado nuevo siguiente.
Procesos
Asignaci
n
P0
P1
P2
P3
P4
Mx.
Disponible
Necesidad
332
Solicitud
102
Ejemplo: Ilustrativo. Supongamos ahora que el proceso P1 Solicita un ejemplar adicional del tipo de
recursos A y dos ejemplares del tipo de recurso C, de modo que solicitud = [1,0,2]
Para decidir si esta solicitud se puede satisfacer de inmediato, primero verificamos que Solicitud <
Disponible esto es, que[1,0,2] < [3,3,2] lo cual es cierto. Ahora simulamos que la solicitud se atendi y
llegamos al estado nuevo siguiente.
Procesos
Asignaci
n
P0
P1
P2
P3
P4
Mx.
Disponible
Necesidad
200
Solicitud
102
Ejemplo: Ilustrativo. Supongamos ahora que el proceso P1 Solicita un ejemplar adicional del tipo de
recursos A y dos ejemplares del tipo de recurso C, de modo que solicitud = [1,0,2]
Para decidir si esta solicitud se puede satisfacer de inmediato, primero verificamos que Solicitud <
Disponible esto es, que[1,0,2] < [3,3,2] lo cual es cierto. Ahora simulamos que la solicitud se atendi y
llegamos al estado nuevo siguiente.
Procesos
Asignaci
n
P0
P1
P2
P3
P4
Mx.
Disponible
Necesidad
122
Solicitud
102
La Nueva matriz es :
Asignacin
Necesidad
Disponible
Procesos
P0
P1
P2
P3
P4
Fin = False
2. Busca una i tal que
Necesida
d
Disponible
Procesos
B C
P0
a) Fin = false
b)Necesidad < Trabajo
3. Trabajo = Trabajo + Asignacin
Fin = True
4. Si Fin = True para todos los procesos, el sistema esta en
estado seguro.
<
Necesida
d
Disponible
Procesos
B C
P0
<
P1
<
Trabajo = Disponible
Fin = False
2. Busca una i tal que
a) Fin = false
b)Necesidad < Trabajo
3. Trabajo = Trabajo + Asignacin
Fin = True
4. Si Fin = True para todos los procesos, el sistema esta en
estado seguro.
Secuencia segura
P1
Procesos A B
Asignacin
Trabajo
A B
P0
P1
2 3
+ 3 0
= 5
2 T
P2
Procesos
Necesida
d
Disponible
B C
a) Fin = false
b)Necesidad < Trabajo
3. Trabajo = Trabajo + Asignacin
Fin = True
4. Si Fin = True para todos los procesos, el sistema esta en
estado seguro.
P1
<
P2
<
Necesida
d
Disponible
Procesos
B C
P1
Trabajo = Disponible
Fin = False
2. Busca una i tal que
a) Fin = false
b)Necesidad < Trabajo
3. Trabajo = Trabajo + Asignacin
<
Fin = True
4. Si Fin = True para todos los procesos, el sistema esta en
estado seguro.
P3= Trabajo(Disponible)
0 1 1 < +5Asignacin
3 2
Trabajo
Disponible
Secuencia segura
P1
P3
Asignacin
FIN
Trabajo
Procesos
P0
P1
P2
P3
+ 2
=
=
Necesida
d
Disponible
Procesos
B C
P1
Trabajo = Disponible
Fin = False
2. Busca una i tal que
a) Fin = false
b)Necesidad < Trabajo
3. Trabajo = Trabajo + Asignacin
<
Fin = True
4. Si Fin = True para todos los procesos, el sistema esta en
estado seguro.
P3= Trabajo(Disponible)
0 1 1 < +5Asignacin
3 2
Trabajo
P4
4 3 1 < 7
Disponible Asignacin
Secuencia segura
P1
P3
P4
Procesos A B
4 3
Trabajo
A B
P1
2 3
+ 3 0
= 5
2 T
P2
Procesos
Necesida
d
Disponible
B C
a) Fin = false
P3
P4
P2
<
P2
<
P3= Trabajo(Disponible)
0 1 1 < +5Asignacin
3 2
Trabajo
P4
4 3 1 < 7
Disponible Asignacin
Secuencia segura
P1
P1
Procesos A B
P1
P2
P3
P4
3
7
5
7
3
4
3
4
C
2
5
2
3
A B
+ 2
+ 3
+ 2
+ 0
0
0
1
0
4 3
Trabajo
A
0 = 5
2 = 10
1 = 7
2 = 7
3
4
4
4
2
7
3
5
T
T
T
T
Necesida
d
Disponible
Procesos
B C
PO
P1
P2
Trabajo = Disponible
Fin = False
2. Busca una i tal que
a) Fin = false
b)Necesidad < Trabajo
3. Trabajo = Trabajo + Asignacin
Fin = True
4. Si Fin = True para todos los procesos, el sistema esta en
estado seguro.
P1
Secuencia segura
P3
P4
P2
P0
< 10 4
<
<
P3= Trabajo(Disponible)
0 1 1 < +5Asignacin
3 2
Trabajo
Procesos
P4
4
Disponible
3 1 < 7
Asignacin
3
Trabajo
FI
N
P0
10 4
+ 0 1
10
P1
P2
P3
P4
2 3
7 4
5 3
7 4
0 + 3 0
5 + 3 0
2 + 2 1
3 + 0 0
2
2
1
2
5
10
7
7
3
4
4
4
2
7
3
5
T
T
T
T
=
=
=
=
P1
Secuencia segura
P3
P4
P2
P0
Asignacin
FI
N
Trabajo
P0
10 4
+ 0 1
10
P1
P2
P3
P4
2 3
7 4
5 3
7 4
0 + 3 0
5 + 3 0
2 + 2 1
3 + 0 0
2
2
1
2
5
10
7
7
3
4
4
4
2
7
3
5
T
T
T
T
Procesos
a) Fin = false
Disponible
=
=
=
=
Problema Propuesto
Ejemplo: Ilustrativo
Considere la siguiente instantnea de un sistema:
Asignacin
n = # procesos
Mx.
Disponible
m = # tipo de recursos
Procesos
Formula n x m
P0
Matriz de 5 x 4
P1
5 Filas, 4 columnas
P2
P3
P4
Mx.
Procesos
P0
P1
P2
P3
P4
Necesidad
Asignacin
Ejemplo: Ilustrativo
Considere la siguiente instantnea de un sistema:
Asignacin
Necesidad
Disponible
Procesos
P0
P1
P2
P3
P4
Disponible.
Procesos
P0
Mx.
P1
P2
P3
P4
trabajo
Asignacin
A
=
Fin
Secuencia segura
P
P
P