Está en la página 1de 19

Erwin Meza Vega (emezav@unicauca.edu.

co)
Universidad del Cauca
SISTEMAS OPERATIVOS
Interbloqueos
Erwin Meza Vega
emezav@unicauca.edu.co
Erwin Meza Vega (emezav@unicauca.edu.co)
Universidad del Cauca
Definicin
Un conjunto de procesos se encuentran
en interbloqueo si cada proceso tiene
asignados uno o ms recursos, y se
encuentra a la espera que se le asignen
recursos que son retenidos por otros
procesos del conjunto.
Erwin Meza Vega (emezav@unicauca.edu.co)
Universidad del Cauca
Condiciones
Exclusin mutua: Una instancia de recurso se
puede asignar slo a un proceso.
No expropiacin: Una vez que se ha asignado un
recurso a un proceso, no se puede quitar por la
fuerza.
Retencin y espera: Los procesos tienen
asignados (retienen) unos recursos, mientras
esperan que se les asigne otros.
Espera circular: Existe un conjunto de procesos
{P
0
, P
1
, , P
n
} de tal forma que P
0
espera por un
recurso que est asignado a P
1
, P
1
espera por un
recurso asignado a P
2
, , P
n1
espera por un
recurso asignado a P
n
, y P
n
espera por un recurso
asignado a P
0.



Erwin Meza Vega (emezav@unicauca.edu.co)
Universidad del Cauca
Ejemplo
Erwin Meza Vega (emezav@unicauca.edu.co)
Universidad del Cauca
Ejemplo (2)
Dos semforos A y B, inicializados a 1
P
0
P
1

down (A); down (B)
down (B); down (A)
Dos vaqueros en un duelo. Slo se tiene
una pistola y una bala. Un vaquero tiene la
pistola, y el otro tiene la bala.
Erwin Meza Vega (emezav@unicauca.edu.co)
Universidad del Cauca
Modelado de interbloqueos
Proceso

Recurso con 4 instancias

P
i
solicita instancia de R
j


P
i
tiene una instancia de R
j

P
i

P
i

R
j

R
j

Erwin Meza Vega (emezav@unicauca.edu.co)
Universidad del Cauca
Grafo de asignacin de
recursos
(a) Sin interbloqueo
(b) Con interbloqueo
Erwin Meza Vega (emezav@unicauca.edu.co)
Universidad del Cauca
Grafo de asignacin de
recursos
Erwin Meza Vega (emezav@unicauca.edu.co)
Universidad del Cauca
Secuencia de asignacin
1. A solicita R
2. B solicita S
3. C solicita T
4. A solicita S
5. B solicita T
6. C solicita R
Erwin Meza Vega (emezav@unicauca.edu.co)
Universidad del Cauca
Deteccin de interbloqueos
E = [ E
1
, E
2
, .. E
m
] Existentes
A = [A
1
, A
2
, A
m
] Asignados
C
11

C
21
C
22

C
n1
C
n2
C
nm

C
12
C
1m
C
2m
R
11

R
21
R
22

R
n1
R
n2
R
nm

R
12
R
1m
R
2m
C = Asignacin actual

R = Requeridos

Erwin Meza Vega (emezav@unicauca.edu.co)
Universidad del Cauca
Ejemplo
E = [ 4, 2, 3, 1 ]
A = [ 2, 1, 3, 1 ]
0

1
2

0

0
0

1

0

2
0

0

1

2

0
1

0

1
2

1

0

0
0

1

0

C = Asignacin actual

R = Requeridos

Erwin Meza Vega (emezav@unicauca.edu.co)
Universidad del Cauca
Recuperacin de un
interbloqueo
Por expropiacin
Rollback
Finalizacin de un proceso

Erwin Meza Vega (emezav@unicauca.edu.co)
Universidad del Cauca
Prevencin
Se busca que un conjunto de procesos no
caiga en un interbloqueo
Se debe monitorear la asignacin de los
recursos
El sistema puede pasar de un estado
Seguro a un estado No seguro
En un estado No seguro, es posible que
se presente un interbloqueo.
Erwin Meza Vega (emezav@unicauca.edu.co)
Universidad del Cauca
Ejemplos
Erwin Meza Vega (emezav@unicauca.edu.co)
Universidad del Cauca
Ejemplo
Erwin Meza Vega (emezav@unicauca.edu.co)
Universidad del Cauca
Ejemplo (cont.)
Erwin Meza Vega (emezav@unicauca.edu.co)
Universidad del Cauca
Prevencin
Se logra atacando alguna de las cuatro
condiciones:
Exclusin mutua: Spooling
Retencin y espera: Solicitar todos los
recursos al inicio
No expropiacin: Expropiar un recurso
Espera circular: Ordenar los recursos
numricamente
Erwin Meza Vega (emezav@unicauca.edu.co)
Universidad del Cauca
REFERENCIAS
Silberschatz, Gagne. Conceptos de
Sistemas Operativos
Tanenbaum. Sistemas Operativos
Modernos
Erwin Meza Vega (emezav@unicauca.edu.co)
Universidad del Cauca
Crditos
Erwin Meza Vega
Universidad del Cauca
emezav@unicauca.edu.co