Академический Документы
Профессиональный Документы
Культура Документы
Sistemas Operativos
TEMA 4:
Profesor:
E.T.S.I. Informática Francisco Rus Mansilla
http://www.lcc.uma.es/~rusman
Índice de contenidos
Interbloqueo
• Introducción al interbloqueo
• Recursos
• Condiciones para que se produzca el interbloqueo
Tema 4:
– Evitación
• Trayectoria de recursos
• Estados seguros
– Detección
– Recuperación
– Estrategia combinada para el manejo de interbloqueos
• Fuentes de información
Francisco Rus Mansilla
Departamento de Lenguajes y Ciencias de la Computación. Universidad de Málaga 2
Tema 4: Interbloqueo 1
Sistemas Operativos 30/04/2003
Interbloqueo Introducción
Introducción
Interbloqueo
Tema 4:
• Deadlock
Interbloqueo • Abrazo mortal
• Bloqueo mutuo
SISTEMAS OPERATIVOS
Tema 4: Interbloqueo 2
Sistemas Operativos 30/04/2003
Interbloqueo Recursos
– Físicos
– Lógicos
• Recursos
SISTEMAS OPERATIVOS
– expropiables
– no expropiables
• Modo de operación:
– Solicitud
– Utilización Llamadas al sistema
– Liberación
interbloqueo
– Exclusión mutua.
– Retención y espera
SISTEMAS OPERATIVOS
– No expropiación
– Espera circular
Tema 4: Interbloqueo 3
Sistemas Operativos 30/04/2003
Procesos
• 2 tipos de nodos
Recursos
• 2 tipos de arcos
SISTEMAS OPERATIVOS
Tema 4: Interbloqueo 4
Sistemas Operativos 30/04/2003
R1 R3
• •
Tema 4:
• •
• •
•
SISTEMAS OPERATIVOS
R2
R4
El proceso P1 tiene asignado un recurso de tipo R2, y espera un recurso de tipo R1.
El proceso P2 tiene asignado un recurso de tipo R1 y otro de tipo R2, y espera un
recurso de tipo R3.
El proceso P3 tiene asignado un recurso de tipo R3.
R1 R3
En este caso la existencia de un ciclo
• •
si es condición necesaria y suficiente
para la existencia de interbloqueo.
P1 P2 P3
• •
Grafo de asignación de • •
R2
•
recursos con un interbloqueo R4
Tema 4: Interbloqueo 5
Sistemas Operativos 30/04/2003
Ignorar el
Algoritmo del avestruz
problema
Tema 4:
ESTRATEGIAS
SISTEMAS OPERATIVOS
ÓN
NCI
E
REV
P
Tema 4:
Exclusión mutua
Impedir que se produzca una Retención y espera
de las cuatro condiciones
necesarias para producirlo No expropiación
Espera circular
Tema 4: Interbloqueo 6
Sistemas Operativos 30/04/2003
N
CIÓ EXCLUSIÓN MUTUA
N
EVE
PR
Tema 4:
ÓN
NCI RETENCIÓN Y ESPERA
E
REV
P
Tema 4:
Forzar a un proceso a que libere todos los recursos Los procesos que esperan
que retiene cada vez que solicite un recurso que no tienen recursos y los
no esté disponible. que tienen no esperan.
SISTEMAS OPERATIVOS
POSIBILIDAD 1
Tema 4: Interbloqueo 7
Sistemas Operativos 30/04/2003
N
CIÓ RETENCIÓN Y ESPERA
N
EVE
PR
Tema 4:
POSIBILIDAD 2
Menos exigente
El proceso solicita los recursos de forma
incremental a lo largo de su ejecución,
pero libera todos los recursos retenidos
SISTEMAS OPERATIVOS
ÓN
NCI NO EXPROPIACIÓN
E
REV
P
Tema 4:
estado y restaurarlo
• Este esquema se puede aplicar sobre recursos cuyo estado puede ser
salvado y restaurado posteriormente (registros de CPU, memoria).
Tema 4: Interbloqueo 8
Sistemas Operativos 30/04/2003
N
CIÓ ESPERA CIRCULAR
EN
EV • Ordenación lineal de los diferentes tipos de recursos del sistema.
PR
Tema 4:
ÓN
ACI IDEA BÁSICA
IT
EV
Tema 4:
SEGU RO
ESTAD O CONCEDE
SISTEMAS OPERATIVOS
PETICIÓN ASIGNADOR
DE
RECURSOS
SUSPENDE
ESTAD O
POTENCI
ALMENTE
INSE GU RO
Tema 4: Interbloqueo 9
Sistemas Operativos 30/04/2003
N TRAYECTORIAS DE RECURSOS
C IÓ
ITA P2
EV u
Tema 4:
I8
Región Región
Impresora Segura Inalcanzable
I7
Región
Segura
SISTEMAS OPERATIVOS
Plotter I6
Región Región
Segura Insegura
I5
r Región Región
s Segura Segura
P1
p q I1 I2 I3 I4
Impresora
Plotter
ÓN
ACI Un estado es seguro si el sistema puede asignar recursos a cada
IT
EV proceso hasta alcanzar el máximo de sus necesidades siguiendo algún
Tema 4:
Tema 4: Interbloqueo 10
Sistemas Operativos 30/04/2003
N
C IÓ
ITA Estados
EV inseguros
Tema 4:
Estados de
Interbloqueo
Estados
ESTADO
INSEGURO ≠ ESTADO DE
INTERBLOQUEO
seguros
SISTEMAS OPERATIVOS
ÓN
ACI
IT Problema
EV
Tema 4:
Sean tres procesos P1, P2 y P3 y un único tipo de recurso del que existe un
total de 10 unidades. En el estado inicial P1 tiene 3 instancias del recurso,
pero podría necesitar en algún instante hasta 9; P2 tiene 2 pero podría
SISTEMAS OPERATIVOS
Tema 4: Interbloqueo 11
Sistemas Operativos 30/04/2003
recursos.
Tema 4: Interbloqueo 12
Sistemas Operativos 30/04/2003
Sea Solicitudi el vector de solicitudes para el proceso Pi. Pi efectúa una solicitud de
recursos y el asignador de recursos toma las siguientes acciones:
ÓN ALGORITMO DE SEGURIDAD
ACI
IT Averiguar si un sistema está o no en un estado seguro
EV
Tema 4:
Tema 4: Interbloqueo 13
Sistemas Operativos 30/04/2003
N
C IÓ Problema
IT A
EV Sea un sistema con cinco procesos, P1 a P5, y tres tipos de recursos, A, B y C, de los
Tema 4:
P3 3 0 2 9 0 2 6 0 0
P4 2 1 1 2 2 2 0 1 1
P5 0 0 2 4 3 3 4 3 1
ÓN RESUMEN
ACI
IT
EV
Tema 4:
recursos.
Tema 4: Interbloqueo 14
Sistemas Operativos 30/04/2003
N
C IÓ RESUMEN
ITA
EV
Tema 4:
práctica no es útil
N
C IÓ
C IDEA BÁSICA
E TE
D
Tema 4:
Intentar
3 romperlo
Tema 4: Interbloqueo 15
Sistemas Operativos 30/04/2003
ÓN
CCI
TE Método práctico:
DE
Tema 4:
no el sistema está
SISTEMAS OPERATIVOS
N ALGORITMO DE DETECCIÓN
C IÓ
C
E TE Es invocado para determinar si se ha producido interbloqueo.
D
Tema 4:
a) Fin[i ] = falso
b) Solicitudi ≤ Trabajo
Si no existe tal i, continuar con el paso 4.
3 Hacer
Trabajo := Trabajo + Asignacióni
Fin[i ] := verdadero
Continuar en el paso 2.
4 Si Fin [i ] = verdadero ∀ i, entonces el sistema no está en estado
interbloqueado. Si no, el estado es de interbloqueo. Además, si Fin[i ] = falso,
entonces el proceso Pi está implicado en el interbloqueo detectado.
Tema 4: Interbloqueo 16
Sistemas Operativos 30/04/2003
ÓN
CCI Problema
TE
DE Sean cinco procesos, P1 a P5, y tres tipos de recursos, A, B y C con 7, 2 y
Tema 4:
P1 0 1 0 0 0 0 0 0 0
P2 2 0 0 2 0 2
P3 3 0 3 0 0 0
P4 2 1 1 1 0 0
P5 0 0 2 0 0 2
N
C IÓ
C
E TE
D
Tema 4:
Tema 4: Interbloqueo 17
Sistemas Operativos 30/04/2003
ÓN
CCI
TE
DE VENTAJAS INCONVENIENTES
Tema 4:
recursos
IÓN
E R AC
UP
REC Cuando un algoritmo de detección determina que existe un
Tema 4:
Tema 4: Interbloqueo 18
Sistemas Operativos 30/04/2003
IÓ N
E R AC TERMINACIÓN DE PROCESOS
UP
REC
Tema 4:
IÓ N
P E RAC TERMINACIÓN DE PROCESOS
U
REC
Tema 4:
• En cualquiera de los casos, puede que no sea fácil terminar un proceso (p.e. si se
encuentra actualizando un fichero).
• Cuando se utiliza el método incremental, se presenta un nuevo problema de
política o decisión: selección de la víctima
SISTEMAS OPERATIVOS
Tema 4: Interbloqueo 19
Sistemas Operativos 30/04/2003
IÓ N
E R AC EXPROPIACIÓN DE RECURSOS
UP
REC
Tema 4:
Selección de la víctima
Se debe hacer retroceder al proceso hasta
llegar a un estado anterior conocido.
Retroceso (rollback)
Asegurar que un mismo proceso sólo es
elegido un número finito de veces.
Postergación indefinida
Si siempre se elige como
víctima al mismo proceso
espera activa o livelock Incluir el número de retrocesos como
factor de costo.
IÓ N
P E RAC
U RESUMEN
REC
Tema 4:
Tema 4: Interbloqueo 20
Sistemas Operativos 30/04/2003
almacenamiento secundario.
Tema 4: Interbloqueo 21
Sistemas Operativos 30/04/2003
razonable.
Fuentes de información
Interbloqueo
Addison-Wesley. 1994.
•“Sistemas Operativos Modernos”. A.S. Tanenbaum.
Prentice-Hall. 1992.
•"Sistemas Operativos, Segunda Edición". Deitel, H. M.,
SISTEMAS OPERATIVOS
Addison-Wesley, 1992.
•"Sistemas Operativos, Segunda Edición". W. Stallings.
Prentice Hall, 1992.
Tema 4: Interbloqueo 22