Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Mtricas
Algoritmos de planificacin
Esquemas hbridos y prioridades externas
Gunnar Wolf
Introduccin
Mtricas
Algoritmos de planificacin
Esquemas hbridos y prioridades externas
ndice
Introduccin
Mtricas
Algoritmos de planificacin
Gunnar Wolf
Introduccin
Mtricas
Algoritmos de planificacin
Esquemas hbridos y prioridades externas
Gunnar Wolf
Introduccin
Mtricas
Algoritmos de planificacin
Esquemas hbridos y prioridades externas
Introduccin
Mtricas
Algoritmos de planificacin
Esquemas hbridos y prioridades externas
Introduccin
Mtricas
Algoritmos de planificacin
Esquemas hbridos y prioridades externas
Gunnar Wolf
Introduccin
Mtricas
Algoritmos de planificacin
Esquemas hbridos y prioridades externas
Gunnar Wolf
Introduccin
Mtricas
Algoritmos de planificacin
Esquemas hbridos y prioridades externas
Gunnar Wolf
Introduccin
Mtricas
Algoritmos de planificacin
Esquemas hbridos y prioridades externas
Gunnar Wolf
Introduccin
Mtricas
Algoritmos de planificacin
Esquemas hbridos y prioridades externas
Gunnar Wolf
Introduccin
Mtricas
Algoritmos de planificacin
Esquemas hbridos y prioridades externas
Largo plazo:
Admitir
Mediano plazo:
Ocurri evento,
Esperar evento
Corto plazo:
Activar ejecucin,
Tiempo terminado
Figura: Diagrama de transicin entre los
estados de un proceso
Gunnar Wolf
Introduccin
Mtricas
Algoritmos de planificacin
Esquemas hbridos y prioridades externas
Gunnar Wolf
Introduccin
Mtricas
Algoritmos de planificacin
Esquemas hbridos y prioridades externas
Tipos de proceso
Gunnar Wolf
Introduccin
Mtricas
Algoritmos de planificacin
Esquemas hbridos y prioridades externas
Tipos de proceso
Ojo: Un poco contraintuitivo!
Largos Han estado listos o en ejecucin por mucho
tiempo
Esto es, estn en una rfaga limitada por
CPU
Cortos En este momento estn en una rfaga limitada
por E/S
Requieren atencin meramente ocasional del
procesador
Tienden a estar bloqueados, esperando a
eventos
Como buena parte de los procesos
interactivos
Gunnar Wolf
Introduccin
Mtricas
Algoritmos de planificacin
Esquemas hbridos y prioridades externas
ndice
Introduccin
Mtricas
Algoritmos de planificacin
Gunnar Wolf
Introduccin
Mtricas
Algoritmos de planificacin
Esquemas hbridos y prioridades externas
Unidades a manejar
Para hablar de planificacin del procesador, no vamos a
manejar tiempos estndar (s, ms, ns), sino que:
Tick Un tiempo mnimo dado durante el cual se puede
realizar trabajo til. Medida caprichosa y
arbitraria.
En Windows, un tick dura entre 10 y 15 ms.
En Linux (2.6.8 en adelante), dura 1 ms.
Quantum Tiempo mnimo, expresado en ticks, que se
permitir a un proceso el uso del procesador.
En Windows, 2 a 12 ticks (esto es, 20 a
180ms).
En Linux, 10 a 200 ticks (10 a 200ms)
Gunnar Wolf
Introduccin
Mtricas
Algoritmos de planificacin
Esquemas hbridos y prioridades externas
Qu es mejor?
No hay un slo criterio para definir qu es una mejor
respuesta
El patrn correcto vara segn el propsito del sistema
Un proceso interactivo sufre si el tiempo de respuesta
incrementa, aunque pueda procesar por ms tiempo
corrido
En caso de sufrir demoras, debemos intentar que sean
consistentes, aunque el tiempo promedio resulte
deteriorado
Es mejor saber que el sistema siempre tardar 0.5s en
responder a mis necesidades a que unas veces responda
de inmediato y otras tarde 3s.
O no?
Gunnar Wolf
Introduccin
Mtricas
Algoritmos de planificacin
Esquemas hbridos y prioridades externas
Qu es mejor?
No hay un slo criterio para definir qu es una mejor
respuesta
El patrn correcto vara segn el propsito del sistema
Un proceso interactivo sufre si el tiempo de respuesta
incrementa, aunque pueda procesar por ms tiempo
corrido
En caso de sufrir demoras, debemos intentar que sean
consistentes, aunque el tiempo promedio resulte
deteriorado
Es mejor saber que el sistema siempre tardar 0.5s en
responder a mis necesidades a que unas veces responda
de inmediato y otras tarde 3s.
O no?
Gunnar Wolf
Introduccin
Mtricas
Algoritmos de planificacin
Esquemas hbridos y prioridades externas
Qu mtricas compararemos?
Para un proceso p que requiere ejecutarse por tiempo t,
Tiempo de respuesta (T ) Tiempo total que toma el trabajo.
Incluye el tiempo que pas inactivo (pero listo).
Tiempo en espera (E ) De T , cunto tiempo est esperando
ejecutar. (Tiempo perdido)
E = T t; Idealmente, para p, Ep 0
Proporcin de penalizacin (P) Fraccin del tiempo de
respuesta durante la cual p estuvo en espera.
P = Tt
Proporcin de respuesta (R) Fraccin del tiempo de respuesta
durante la cual p pudo ejecutarse.
R = Tt ; R = P1
Gunnar Wolf
Introduccin
Mtricas
Algoritmos de planificacin
Esquemas hbridos y prioridades externas
Introduccin
Mtricas
Algoritmos de planificacin
Esquemas hbridos y prioridades externas
Por ejemplo. . .
Los siguientes procesos forman la cola de procesos listos:
Proceso
A
B
C
D
Ticks
7
3
12
4
Llegada
0
2
6
20
Introduccin
Mtricas
Algoritmos de planificacin
Esquemas hbridos y prioridades externas
Gunnar Wolf
Introduccin
Mtricas
Algoritmos de planificacin
Esquemas hbridos y prioridades externas
Gunnar Wolf
Introduccin
Mtricas
Algoritmos de planificacin
Esquemas hbridos y prioridades externas
t
7
3
12
4
Tiempo kernel
Tiempo desocupado
Utilizacin del CPU
Gunnar Wolf
Introduccin
Mtricas
Algoritmos de planificacin
Esquemas hbridos y prioridades externas
t
T
E
7
18
11
3
7
4
12
26
14
4
9
5
6.5
15 8.50
6
32
26
6.4 18.4 12.00
P
2.57
2.33
2.17
2.25
2.31
5.33
2.88
R
0.389
0.429
0.462
0.444
0.433
0.188
0.348
Introduccin
Mtricas
Algoritmos de planificacin
Esquemas hbridos y prioridades externas
Frecuencias
Respecto al patrn de llegadas y salidas de procesos a la cola
de procesos listos:
Frecuencia de llegada promedio
Tiempo de servicio requerido promedio
Valor de saturacin, =
Esto significa:
= 0 Nunca llegan procesos nuevos; el sistema estar
desocupado
= 1 Los procesos salen al mismo ritmo al que entran
> 1 Los procesos llegan ms rpido de lo que puede
ser atendidos. La cola de procesos listos tiende a
crecer. R disminuye para todos.
Gunnar Wolf
Introduccin
Mtricas
Algoritmos de planificacin
Esquemas hbridos y prioridades externas
ndice
Introduccin
Mtricas
Algoritmos de planificacin
Gunnar Wolf
Introduccin
Mtricas
Algoritmos de planificacin
Esquemas hbridos y prioridades externas
Introduccin
Mtricas
Algoritmos de planificacin
Esquemas hbridos y prioridades externas
Tiempo de
llegada
A
B
C
D
E
Promedio
Gunnar Wolf
Tiempo
requerido
(t)
0
3
1
5
3
2
9
5
12
5
4
Introduccin
Mtricas
Algoritmos de planificacin
Esquemas hbridos y prioridades externas
Gunnar Wolf
Introduccin
Mtricas
Algoritmos de planificacin
Esquemas hbridos y prioridades externas
Gunnar Wolf
Introduccin
Mtricas
Algoritmos de planificacin
Esquemas hbridos y prioridades externas
Proceso
Inicio Fin
T
A
0
3
3
B
3
8
7
C
8 10
7
D
10 15
6
E
15 20
8
Promedio
6.2
Gunnar Wolf
E
P
0
1
2 1.4
5 3.5
1 1.2
3 1.6
2.2 1.74
Introduccin
Mtricas
Algoritmos de planificacin
Esquemas hbridos y prioridades externas
Introduccin
Mtricas
Algoritmos de planificacin
Esquemas hbridos y prioridades externas
Gunnar Wolf
Introduccin
Mtricas
Algoritmos de planificacin
Esquemas hbridos y prioridades externas
Gunnar Wolf
Introduccin
Mtricas
Algoritmos de planificacin
Esquemas hbridos y prioridades externas
Proceso
Inicio Fin
A
0
6
B
1 11
C
4
8
D
9 18
E
12 20
Promedio
Gunnar Wolf
T
E
P
6
3 2.0
10
5 2.0
5
3 2.5
9
4 1.8
8
3 1.6
7.6 3.6 1.98
Introduccin
Mtricas
Algoritmos de planificacin
Esquemas hbridos y prioridades externas
Gunnar Wolf
Introduccin
Mtricas
Algoritmos de planificacin
Esquemas hbridos y prioridades externas
Gunnar Wolf
Introduccin
Mtricas
Algoritmos de planificacin
Esquemas hbridos y prioridades externas
Proceso
Inicio Fin
T
E
P
A
0
3
3
0 1.0
B
3 10
9
4 1.8
C
7
9
6
4 3.0
D
10 19 10
5 2.0
E
14 20
8
3 1.6
Promedio
7.2 3.2 1.88
Gunnar Wolf
Introduccin
Mtricas
Algoritmos de planificacin
Esquemas hbridos y prioridades externas
Gunnar Wolf
Introduccin
Mtricas
Algoritmos de planificacin
Esquemas hbridos y prioridades externas
Gunnar Wolf
Introduccin
Mtricas
Algoritmos de planificacin
Esquemas hbridos y prioridades externas
Introduccin
Mtricas
Algoritmos de planificacin
Esquemas hbridos y prioridades externas
Gunnar Wolf
Introduccin
Mtricas
Algoritmos de planificacin
Esquemas hbridos y prioridades externas
Introduccin
Mtricas
Algoritmos de planificacin
Esquemas hbridos y prioridades externas
Gunnar Wolf
Introduccin
Mtricas
Algoritmos de planificacin
Esquemas hbridos y prioridades externas
Proceso
Inicio Fin
T
E
P
A
0
3
3
0 1.0
B
5 10
9
4 1.8
C
3
5
2
0 1.0
D
10 15
6
1 1.2
E
15 20
8
3 1.6
Promedio
5.6 1.6 1.32
Gunnar Wolf
Introduccin
Mtricas
Algoritmos de planificacin
Esquemas hbridos y prioridades externas
Gunnar Wolf
Introduccin
Mtricas
Algoritmos de planificacin
Esquemas hbridos y prioridades externas
Gunnar Wolf
Introduccin
Mtricas
Algoritmos de planificacin
Esquemas hbridos y prioridades externas
Introduccin
Mtricas
Algoritmos de planificacin
Esquemas hbridos y prioridades externas
Gunnar Wolf
Introduccin
Mtricas
Algoritmos de planificacin
Esquemas hbridos y prioridades externas
Gunnar Wolf
Introduccin
Mtricas
Algoritmos de planificacin
Esquemas hbridos y prioridades externas
Gunnar Wolf
Introduccin
Mtricas
Algoritmos de planificacin
Esquemas hbridos y prioridades externas
El algoritmo es barato
Slo hay que actualizar a un proceso a cada ejecucin, y
evaluar un nmero limitado de colas
Gunnar Wolf
Introduccin
Mtricas
Algoritmos de planificacin
Esquemas hbridos y prioridades externas
Gunnar Wolf
Introduccin
Mtricas
Algoritmos de planificacin
Esquemas hbridos y prioridades externas
Gunnar Wolf
Introduccin
Mtricas
Algoritmos de planificacin
Esquemas hbridos y prioridades externas
Proceso
Inicio Fin T E
A
0
7 7 4
B
1 18 17 12
C
3
6 3 1
D
9 19 10 5
E
12 20 8 3
Promedio
9 5
Gunnar Wolf
P
1.7
3.4
1.5
2.0
1.6
2.04
Introduccin
Mtricas
Algoritmos de planificacin
Esquemas hbridos y prioridades externas
Introduccin
Mtricas
Algoritmos de planificacin
Esquemas hbridos y prioridades externas
Gunnar Wolf
Introduccin
Mtricas
Algoritmos de planificacin
Esquemas hbridos y prioridades externas
Fenmenos observados:
Aunque FB favorece a los procesos recin llegados, al tick
3, 9 y 10 los procesos que llegan son puestos en espera
Llegaron a la mitad del quantum largo de otro proceso
Gunnar Wolf
Introduccin
Mtricas
Algoritmos de planificacin
Esquemas hbridos y prioridades externas
Proceso
Inicio Fin T E
P
A
0
4 4 1 1.3
B
1 10 9 4 1.8
C
4
8 5 3 2.5
D
10 18 9 4 1.8
E
13 20 8 3 1.6
Promedio
7 3 1.8
Gunnar Wolf
Introduccin
Mtricas
Algoritmos de planificacin
Esquemas hbridos y prioridades externas
Gunnar Wolf
Introduccin
Mtricas
Algoritmos de planificacin
Esquemas hbridos y prioridades externas
Gunnar Wolf
Introduccin
Mtricas
Algoritmos de planificacin
Esquemas hbridos y prioridades externas
Parmetros ajustables:
a Ritmo de incremento de prioridad de
procesos aceptados
b Ritmo de incremento de prioridad de
procesos nuevos
Cuando la prioridad de un proceso nuevo alcanza a la de
uno aceptado, ste se acepta.
Gunnar Wolf
Introduccin
Mtricas
Algoritmos de planificacin
Esquemas hbridos y prioridades externas
Gunnar Wolf
Introduccin
Mtricas
Algoritmos de planificacin
Esquemas hbridos y prioridades externas
Proceso
Inicio Fin
T
E
P
A
0
4
4
1 1.3
B
2 10
9
4 1.8
C
6
9
6
4 3.0
D
10 15
6
1 1.2
E
15 20
8
3 1.6
Promedio
6.6 2.6 1.79
Gunnar Wolf
Introduccin
Mtricas
Algoritmos de planificacin
Esquemas hbridos y prioridades externas
b
a
< 1:
Si 0 <
b
a
Introduccin
Mtricas
Algoritmos de planificacin
Esquemas hbridos y prioridades externas
Gunnar Wolf
Introduccin
Mtricas
Algoritmos de planificacin
Esquemas hbridos y prioridades externas
Cooperativa
Preventiva
No considera Considera
intrnseca
intrnseca
Primero llegado Proceso ms
primero servido corto (SPN),
(FCFS)
Proceso ms
penalizado (HPRN)
Ronda (RR)
Proceso ms corto
preventivo (PSPN),
Retroalimentacin (FB),
Ronda egosta (SRR)
Gunnar Wolf
Introduccin
Mtricas
Algoritmos de planificacin
Esquemas hbridos y prioridades externas
Tarea!
Gunnar Wolf
Introduccin
Mtricas
Algoritmos de planificacin
Esquemas hbridos y prioridades externas
Introduccin
Mtricas
Algoritmos de planificacin
Esquemas hbridos y prioridades externas
ndice
Introduccin
Mtricas
Algoritmos de planificacin
Gunnar Wolf
Introduccin
Mtricas
Algoritmos de planificacin
Esquemas hbridos y prioridades externas
Esquemas hbridos
Gunnar Wolf
Introduccin
Mtricas
Algoritmos de planificacin
Esquemas hbridos y prioridades externas
Gunnar Wolf
Introduccin
Mtricas
Algoritmos de planificacin
Esquemas hbridos y prioridades externas
Gunnar Wolf
Introduccin
Mtricas
Algoritmos de planificacin
Esquemas hbridos y prioridades externas
Gunnar Wolf
Introduccin
Mtricas
Algoritmos de planificacin
Esquemas hbridos y prioridades externas
Introduccin
Mtricas
Algoritmos de planificacin
Esquemas hbridos y prioridades externas
Gunnar Wolf
Introduccin
Mtricas
Algoritmos de planificacin
Esquemas hbridos y prioridades externas
Introduccin
Mtricas
Algoritmos de planificacin
Esquemas hbridos y prioridades externas
Lindura (niceness)
Empleado por varios Unixes histricos
El usuario inicia (nice) o modifica (renice) la
prioridad de su proceso
Tpicamente slo hacia arriba Se porta ms lindo.