2. Administración de procesosmario.elinos.org.mx/docencia/sistoper/process2.pdf · 8 Sección...
Transcript of 2. Administración de procesosmario.elinos.org.mx/docencia/sistoper/process2.pdf · 8 Sección...
1
2. Administración de procesos
M. en C. Mario Farias-Elinos
Contenido
n Antecedentesn Sección crítican Problemas de sincronizaciónn Transacciones atómicasn Deadlock
2
Threads
(a) Tres procesos con un thread cada uno(b) Un proceso con 3 threads
Thread
n Items compartidos por todos los threads (proceso)n Items exlusivos para el thread
3
Thread
Cada thread tiene su propio stack
Thread
Ejemplificació de aplicación con threads
4
Thread
Web server con multiples threads
Thread
(a) Thread despachador(b) Thread trabajador
5
Thread
Formas de desarrollar un servidor
Threads en el kernel
Nivel de usuario
6
Threads en el kernel
Administrador de threads en el kernel
Threads en el kernel
multiplexando threads en el user-level y kernel
7
Antecedentes
n Procesos cooperativosu Compartición de códigou Compartición de datos
n Problemáticasu Inconsistecia de la informaciónuMemoria limitadau Sincronización de procesos
Antecedentes
8
Sección crítica
n “n” procesos comparten un segmento de códigouModificación de variablesu Compartición de archivos
n Característica importanteu P0 ejecuta sección crítica, ningún otro proceso
ejecute dicha sección crítica
n Sección crítica es mutuamente excluyente en el tiempo
Sección crítica
n Partes de una sección críticau Sección de ingresou Sección críticau Sección de egresou Sección restante
9
Sección crítica
n La solución debe satisfaceruMutua exclusiónu Progresou Espera limitada
Problema de sincronización
10
Semáforos
n Variable entera accesible poruWaitu Signal
n Desventajau Espera activa -> Desperdicio de ciclos del CPUu Deadlocks
Sincronización
11
Monitores
Transacciones atómicas
n La ejecución en un paso de la sección críticauOperaciones read y writeu Terminación con commit y abort (rollback)
n Tipos de almacenamientou Volátilu No volátilu Estable
12
Transacciones atómicas
n Una forma de asegurar la atomicidad es por medio de bitácorasu Nombre de la transacciónu Nombre del datou Valor antiguou Valor nuevo
Transacciones atómicas concurrentesn Asegurar la ejecución de la sección crítica por un
sólo procesou Serializaciónu Protocolo de cerradura
«Compartido«Exclusivo
u Estampas de tiempo
13
Deadlock
n Cuando dos procesos tienen asignados recursos, pero esperan también el recurso que el otro tienen
n CaracterísticasuMutua exclusiónu Retener y esperaru No expropiaciónu Espera circular
Antecedentes
(a) Deadlock potencial. (b) deadlock.
14
Deadlock
Manejo del deadlock
n Creación de un protocolo para evitar el deadlockn Permitir el deadlock y que el sistema se recuperen Desentendernos del problema
15
Prevención del deadlock
n Asegurar que no se cumplirá una de las condicionesuMutua exclusiónu Retener y esperaru No expropiaciónu Espera circular
Prevención del deadlock
n Un algoritmo que examine el sistema y localice deadlocks
n Un algoritmo para la recuperación
16
Recuperación del deadlock
n Terminación de procesosu Abortar todos los procesosu Abortar un proceso a la vez hasta eliminar el
deadlock
n Expropiación del recursou Selección de la victimau Retrocesou Inanición