2. administración de procesosmario.elinos.org.mx/docencia/sistoper/process2.pdf · 8 sección...

Post on 07-Apr-2020

4 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

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

top related