Introduccin (I)
2
Programa:
Algo
Sistemas Operativos.
Gestin de Procesos
Proceso:
Algo
Introduccin (II)
3
Introduccin (III)
Componentes de un proceso:
En
Estados
Transiciones
Ejecucin a Bloqueado
Bloqueado a Listo
Ejecucin a Listo y viceversa
Cambios de contexto.
08/10/2011
Procesos e Hilos
La
10
Necesidad
10
12
Soluciones
Inhabilitacin de interrupciones
Instrucciones especiales. Se ejecutan seguidas sin soltar el control CPU
Hacer
Semforos
Monitores
Paso de mensajes
Semforos :
Un
Soluciones
El semforo se inicializa a 1.
El primer proceso que entra, ejecuta Wait(S) y lo baja a 0.
Un proceso se bloquea si deja el semforo en <0.
El segundo proceso que entra, ejecuta Wait(S) y lo baja a -1. Se
bloquea.
Si llegan ms, se sigue decrementando. El valor absoluto nos dice
cuntos procesos estn esperando.
Cuando el primer proceso termina, ejecuta Signal(S), subiendo 1 el
valor y desbloqueando el segundo proceso.
Existen
11
08/10/2011
13
Monitores :
14
Estructuras
Paso de mensajes :
Las
La
13
14
15
Interbloqueo (I)
Exclusin mutua :
16
Un
mutua.
No apropiacin.
Retencin y Espera.
Circular.
15
16
Interbloqueo (II)
17
18
Prevencin: evitar
17
08/10/2011
19
20
Justicia:
Intensivos
en E/S (I/O-bound)
en CPU (CPU-bound)
Ejecucin a bloqueado.
Ejecucin a terminado.
c) Ejecucin a listo.
d) Bloqueado a listo.
b)
19
20
FCFS
21
22
SJN
Tabla
de tiempos de ejemplo
Proceso
T. Llegada
T. Ejecucin
P1
P2
P3
P4
Ventajas:
Desventajas:
21
22
No
apropiativo
24
Ventajas:
Parece perfecto.
Consigue mejor tiempo de respuesta que FCFS.
Desventajas:
Apropiativo
23
24
08/10/2011
RR:
26
Desventajas:
Ejemplo:
Proceso
T. Ejecucin
P1
53
P2
17
P3
68
P4
24
quantum = 20
Ventajas:
25
26
Por
Prioridad:
Cmo
Tiempo Ejecucin
P1
10
P2
P3
P4
P5
Asignar Prioridades: .
Suelen
Prioridad
27
28
Mltiples
30
Caso:
Planificacin
en dos niveles
30
08/10/2011
31
32
Algoritmo
31
Algoritmo
32
Implementa
Tiene
Hilos.
un sistema de gestin de excepciones complejo:
Estructurado.
Similar al que utilizan lenguajes como C++ o Java
33