Tema 4
-
Upload
andrea-carmona-hernandez -
Category
Documents
-
view
31 -
download
0
Transcript of Tema 4
1
Tema 4: Planificación de Procesos
Sistemas OperativosSistemas Operativos
2
Índice:
1. Objetivos de la planificación.
2. Índices de Evaluación
3. Planificación Apropiativa y No Apropiativa
4. Métodos no Apropiativos
5. Métodos Apropiativos2
Tem
a 4:
Pla
nif
icac
ión
de
pro
ceso
s
3
Índice:
1. Objetivos de la planificación.
2. Índices de Evaluación
3. Planificación Apropiativa y No Apropiativa
4. Métodos no Apropiativos
5. Métodos Apropiativos3
Tem
a 4:
Pla
nif
icac
ión
de
pro
ceso
s
4
1. Objetivos de la planificación
Tem
a 4:
Pla
nif
icac
ión
de
pro
ceso
s
Planificación = repartir el tiempo de CPU“Lo que hay, es lo que hay” (favorecer un tipo de proceso
implica perjudicar otro)
Objetivos:Aprovechamiento de CPUDisminución tiempos de espera por parte de procesos
5
1. Objetivos de la planificación
Tem
a 4:
Pla
nif
icac
ión
de
pro
ceso
s
Comportamiento deseable:ImparcialidadRepetibilidadPredecibilidadEficienciaProductividad
Sistemas no interactivos: nº trabajos / unidad de tiempoSistemas interactivos: tiempo de respuesta
EconomíaEquilibrioOptimizar uso de recursos críticosDegradación progresiva
6
Tem
a 4:
Pla
nif
icac
ión
de
pro
ceso
s
Índice:
1. Objetivos de la planificación.
2. Índices de Evaluación
3. Planificación Apropiativa y No Apropiativa
4. Métodos no Apropiativos
5. Métodos Apropiativos
7
2. Índices de Evaluación
tHe Hc Ht
W
Tiempo de espera: W=Hc-He
t
Tiempo de ejecución: t (¡Ojo con las operaciones E/S)
T
Tiempo de terminación: T= Ht-He
Tem
a 4:
Pla
nif
icac
ión
de
pro
ceso
s
8
2. Índices de Evaluación
Tiempo perdido: M= T – t
Índice de penalización: P= T / t
Índice de respuesta: R= t / T
Tem
a 4:
Pla
nif
icac
ión
de
pro
ceso
s
tHe Hc Ht
W
t
T
Tiempo de respuesta
Tiempo del sistema
Tiempo de inactividad
9
2. Índices de Evaluación (cont.)
Tem
a 4:
Pla
nif
icac
ión
de
pro
ceso
s
Evaluación:AnálisisSimulaciónExperimentación
10
Tem
a 4:
Pla
nif
icac
ión
de
pro
ceso
s
Índice:
1. Objetivos de la planificación.
2. Índices de Evaluación
3. Planificación Apropiativa y No Apropiativa
4. Métodos no Apropiativos
5. Métodos Apropiativos
11
3. Planificación Apropiativa y No Apropiativa
Tem
a 4:
Pla
nif
icac
ión
de
pro
ceso
s
Planificación no apropiativa:Una vez asignada CPU sólo se retira en caso de bloqueoPosibilidad de devolución explícita
Planificación apropiativa:El planificador puede retirar la CPU
12
3. Planificación Apropiativa y No Apropiativa
Tem
a 4:
Pla
nif
icac
ión
de
pro
ceso
s Planificación NO Apropiativa:
Ventajas:•Determinismo
•Menor nº de conmutaciones → menor sobrecarga
Inconvenientes:•Proceso largo monopoliza la CPU
•Baja fiabilidad
Planificación Apropiativa:Ventajas e inconvenientes: al revés que No ApropiativaNecesiaria en:
•Sistemas multiusuarios interactivos
•En determinadas circunstancias, en sistemas en tiempo real
13
Tem
a 4:
Pla
nif
icac
ión
de
pro
ceso
s
Índice:
1. Objetivos de la planificación.
2. Índices de Evaluación
3. Planificación Apropiativa y No Apropiativa
4. Métodos no Apropiativos
5. Métodos Apropiativos
14
4. Métodos no apropiativos
Tem
a 4:
Pla
nif
icac
ión
de
pro
ceso
s
1. Por orden de llegada (FCFS)
2. Siguiente el más corto (SJN)
3. Por mayor índice de penalización (HPRN)
4. Planificación con conocimiento de futuro
15
4. Métodos no apropiativos
Tem
a 4:
Pla
nif
icac
ión
de
pro
ceso
s
1. Por orden de llegada (FCFS)
2. Siguiente el proceso más corto (SJN)
3. Por mayor índice de penalización (HPRN)
4. Planificación con conocimiento de futuro
16
4.1 Planificación por orden de llegada
Tem
a 4:
Pla
nif
icac
ión
de
pro
ceso
s Ante varios procesos preparados, CPU se asigna al que lleva más tiempo esperando
Ventajas:SimplicidadPlanificación necesita pocos recursos
Inconvenientes:¡Malos resultados!
17
4.1 Planificación por orden de llegada
Tem
a 4:
Pla
nif
icac
ión
de
pro
ceso
s He t
P1 0 3
P2 1 100
P3 2 10
P4 3 1
P1
0
P2
P3
P4
103 113 114
¡Perjudica a procesos cortos que llegan tras procesos largos!
1
P2
2
P3
3
P4
18
4. Métodos no apropiativos
Tem
a 4:
Pla
nif
icac
ión
de
pro
ceso
s
1. Por orden de llegada (FCFS)
2. Siguiente el proceso más corto (SJN)
3. Por mayor índice de penalización (HPRN)
4. Planificación con conocimiento de futuro
19
4.2 Siguiente el proceso más corto
Tem
a 4:
Pla
nif
icac
ión
de
pro
ceso
s
Ante varios procesos preparados, CPU se asigna al proceso de menor duración
P1
0
P2
P3
P4
4 14 114
Penalización P4: P= 1 / 1 = 1Penalización P3: P= 12 / 10 = 1,2Penalización P2: P= 113 / 100 = 1,13
1
P2
2
P3
3
P4
20
4.2 Planificación por orden de llegada
Tem
a 4:
Pla
nif
icac
ión
de
pro
ceso
s
Ventajas:Mejora a FCFS en que no perjudica a procesos cortos
que lleguen después de procesos largos…
Inconvenientes:… A menos que el proceso largo ya se haya activado!¿Cuál es la duración de nuestros procesos?Aplazamiento indefinido procesos largos!!
21
4. Métodos no apropiativos
Tem
a 4:
Pla
nif
icac
ión
de
pro
ceso
s
1. Por orden de llegada (FCFS)
2. Siguiente el proceso más corto (SJN)
3. Por mayor índice de penalización (HPRN)
4. Planificación con conocimiento de futuro
22
4.3 Planif. por mayor índice de penalización
Tem
a 4:
Pla
nif
icac
ión
de
pro
ceso
s Ante varios procesos preparados, CPU se asigna al que está sufriendo un mayor índice de penalización
P = T / t, pero si planificación no apropiativa, T=W+t
¡¡ P = (W+t) / t = W / t + 1!!
23
4.1 Planif. por mayor índice de penalización
Tem
a 4:
Pla
nif
icac
ión
de
pro
ceso
s He t
P1 0 2
P2 1 2
P3 1 5
P4 3 2
P1
0
P3
91
P2,P3
2
P2
3
P4
P2: W/t + 1=1/2 + 1 = 1,5P3: W/t + 1=1/5 + 1 = 1,2
¡Gana P2!
P3: W/t + 1=3/5 + 1 = 1,6P4: W/t + 1=1/2 + 1 = 1,5
¡Gana P3!
4
P1
11
24
4.2 Planif. por mayor índice de penalización
Tem
a 4:
Pla
nif
icac
ión
de
pro
ceso
s
Ventajas:Mejora a SJN en que no aplaza indefinidamente
procesos largos
Inconvenientes:Sigue perjudicando procesos cortos que llegan cuando
ya ha comenzado proceso largo. ¿Cuál es la duración de nuestros procesos?
25
4. Métodos no apropiativos
Tem
a 4:
Pla
nif
icac
ión
de
pro
ceso
s
1. Por orden de llegada (FCFS)
2. Siguiente el proceso más corto (SJN)
3. Por mayor índice de penalización (HPRN)
4. Planificación con conocimiento de futuro
26
4.1 Planificación con conocimiento de futuro
Tem
a 4:
Pla
nif
icac
ión
de
pro
ceso
s Idea a aplicar en combinación con otros criterios Si adivináramos que tras un proceso largo llegará en
el futuro un proceso corto, obligando al largo a esperar la llegada y terminación del corto, podemos mejorar el índice medio de penalización!!
He t
P1 0 100
P2 1 1 P2
P1
0 1 2 102¡CPU OCIOSA!
27
4.1 Planificación con conocimiento de futuro
Tem
a 4:
Pla
nif
icac
ión
de
pro
ceso
s Buena prueba de que aprovechamiento de CPU y reducción tiempos de espera pueden ser criterios contrapuestos
¿Es posible tener conocimiento de futuro? Hay sistemas en los que no es descabellado (sistemas en tiempo real)
28
Tem
a 4:
Pla
nif
icac
ión
de
pro
ceso
s
Índice:
1. Objetivos de la planificación.
2. Índices de Evaluación
3. Planificación Apropiativa y No Apropiativa
4. Métodos no Apropiativos
5. Métodos Apropiativos
29
5. Métodos apropiativos
Tem
a 4:
Pla
nif
icac
ión
de
pro
ceso
s 1. Siguiente el más corto, con apropiación (PSJN)
2. Planificación por prioridades
3. Planificación por turno rotatorio (Round Robin)
4. Planificación por colas multinivel
5. Planificación por reparto equitativo
6. Planificación por peor servicio
30
5. Métodos apropiativos
Tem
a 4:
Pla
nif
icac
ión
de
pro
ceso
s 1. Siguiente el más corto, con apropiación (PSJN)
2. Planificación por prioridades
3. Planificación por turno rotatorio (Round Robin)
4. Planificación por colas multinivel
5. Planificación por reparto equitativo
6. Planificación por peor servicio
31
5.1 Siguiente el más corto, con apropiación
Tem
a 4:
Pla
nif
icac
ión
de
pro
ceso
s Planificación SJN, en la que se también se aplica el criterio cada vez que llega un nuevo proceso
Si proceso que llega es más corto que tiempo restante de proceso activo → APROPIACIÓN
He t
P1 1 100
P2 2 10
P3 3 1
32
5.1 Siguiente el más corto, con apropiación
Tem
a 4:
Pla
nif
icac
ión
de
pro
ceso
s
He t
P1 0 100
P2 1 10
P3 2 1
0 1 2 3
P2
P1
P3
P1
P2
P3
12
Ventajas:Ya no es problema que un
proceso corto llegue una vez activado un proceso largo!
Inconvenientes:No sólo puede aplazar
indefinidamente el comienzo de procesos largos, sino que además también su terminación!
111
P2 P3
33
5. Métodos apropiativos
Tem
a 4:
Pla
nif
icac
ión
de
pro
ceso
s 1. Siguiente el más corto, con apropiación (PSJN)
2. Planificación por prioridades
3. Planificación por turno rotatorio (Round Robin)
4. Planificación por colas multinivel
5. Planificación por reparto equitativo
6. Planificación por peor servicio
34
5.2 Planificación por prioridades
Tem
a 4:
Pla
nif
icac
ión
de
pro
ceso
s A cada proceso se le asigna una prioridad Lista de procesos preparados ordenada por
prioridad El proceso activo será siempre el de mayor prioridad
Si proceso activo se bloquea → se activa el primero de lista
Cuando un proceso pasa de bloqueado a preparado:• Si mayor prioridad que proceso activo → apropiación
• Si menor prioridad que proceso activo → se inserta en lugar correspondiente de lista de preparados
P1 P2 P3 Planificador
Pr=2 Pr=4
Pr=6
P4
Pr=5
35
5.2 Planificación por prioridades
Tem
a 4:
Pla
nif
icac
ión
de
pro
ceso
s
Peligro:Posibilidad aplazamiento indefinido de procesos de
menor prioridad
¡Asignación de prioridades es crítica!
Criterios:Sistemas en tiempo real:
• Sucesos más importantes:
• Sucesos más rápidos:
Sistemas por lotes:• Procesos con más E/S:
Sistemas interactivos:
36
5.2 Planificación por prioridades
Tem
a 4:
Pla
nif
icac
ión
de
pro
ceso
s Planificación por prioridades mixtas:Prioridad total = prioridad estática + prioridad dinámica
Evolución prioridad dinámica:Prioridad por envejecimieto
• Prioridad procesos preparados se incrementa periódicamente
• Si prioridad total de algún proceso preparado supera la de proceso activo → APROPIACIÓN
• Proceso apropiado pasa a preparado con prioridad dinámica mínima
37
5.2 Planificación por prioridades
Tem
a 4:
Pla
nif
icac
ión
de
pro
ceso
s Evolución prioridad dinámica (cont.):Por tiempo continuado de ejecución
• Se establece un tiempo máximo de ejecución continuada
• A procesos que agotan 100% de dicho tiempo: prioridad dinámica mínima
• Procesos que se bloquean antes: prioridad dinámica proporcional a tiempo sobrante.
38
5. Métodos apropiativos
Tem
a 4:
Pla
nif
icac
ión
de
pro
ceso
s 1. Siguiente el más corto, con apropiación (PSJN)
2. Planificación por prioridades
3. Planificación por turno rotatorio (Round Robin)
4. Planificación por colas multinivel
5. Planificación por reparto equitativo
6. Planificación por peor servicio
39
5.3 Planificación por turno rotatorio
Tem
a 4:
Pla
nif
icac
ión
de
pro
ceso
s Se establece un tiempo máximo de ejecución (ranura, cuanto, cuantum, q)
Se asigna la CPU por turnos de duración máxima = q a los procesos preparados
P1 P2 P3 Planificador
P4
P4 P1 P2 Planificador
P3
P3 P4 P1 Planificador
P2
P2 P3 P4 Planificador
P1
P1 P2 P3 Planificador
P4
40
5.3 Planificación por turno rotatorio
Tem
a 4:
Pla
nif
icac
ión
de
pro
ceso
s Consideraciones sobre el cuanto:
Tiempo máximo empleado en una rotación si hay N procesos: N*q
Tiempo de respuesta ≤ (N-1)*q
41
5.3 Planificación por turno rotatorio
Tem
a 4:
Pla
nif
icac
ión
de
pro
ceso
s ¿Podría q ser tan pequeño como quisiéramos?
P1 P2 P3 P4 P1 P2
t
42
5.3 Planificación por turno rotatorio
Tem
a 4:
Pla
nif
icac
ión
de
pro
ceso
s ¿Podría q ser tan pequeño como quisiéramos?
t
Ideal: Un poco mayor que tiempo medio entre E/S
Procesos que hacen E/S: casi no les afecta la apropiación.
Procesos de cálculo: son apropiados
43
5.3 Planificación por turno rotatorio
Tem
a 4:
Pla
nif
icac
ión
de
pro
ceso
s ¿Deberíamos compensar a los procesos que debido a bloqueo pierden parte de su cuanto?
Acumulación de cuantos:La parte no consumida del cuanto se añadirá al
siguiente cuanto tras terminar bloqueoDifícil implementación¡Monopolización CPU!
Reinserción intermediaEl proceso se reinserta en lista de preparado en
posición proporcional a tiempo no consumido
44
5. Métodos apropiativos
Tem
a 4:
Pla
nif
icac
ión
de
pro
ceso
s 1. Siguiente el más corto, con apropiación (PSJN)
2. Planificación por prioridades
3. Planificación por turno rotatorio (Round Robin)
4. Planificación por colas multinivel
5. Planificación por reparto equitativo
6. Planificación por peor servicio
45
5.4 Planificación por colas multinivel
Tem
a 4:
Pla
nif
icac
ión
de
pro
ceso
s
Planificador
El planificador tiene varias colas de procesos preparados
Cada cola se planifica por turno rotatorio Posibilidad de diversos criterios
Colas organizadas por “prioridad”:
P1 P2 P3
P4 P5
P6 P7
- p
rio
rid
ad +
46
5.4 Planificación por colas multinivel
Tem
a 4:
Pla
nif
icac
ión
de
pro
ceso
s
Planificador
Colas multinivel con realimentación:Método que se adapta a carácter dinámico de los
procesos
P4 P5
P1 P2 P3
P6 P7
q
2q
4q
4x
2x
1x
47
5.4 Planificación por colas multinivel
Tem
a 4:
Pla
nif
icac
ión
de
pro
ceso
s
Planificador
Colas multinivel con realimentación:Método que se adapta a carácter dinámico de los
procesos
P4 P5
P1 P2 P3
P6 P7
q
2q
4q
48
5. Métodos apropiativos
Tem
a 4:
Pla
nif
icac
ión
de
pro
ceso
s 1. Siguiente el más corto, con apropiación (PSJN)
2. Planificación por prioridades
3. Planificación por turno rotatorio (Round Robin)
4. Planificación por colas multinivel
5. Planificación por reparto equitativo
6. Planificación por peor servicio
49
5.5 Planificación por reparto equitativo
Tem
a 4:
Pla
nif
icac
ión
de
pro
ceso
s
P1 P2 P3
1/3 CPU 1/3 CPU 1/3 CPU
El ¿problema?
P4
1/4 CPU 1/4 CPU 1/2 CPU
50
5.5 Planificación por reparto equitativo
Tem
a 4:
Pla
nif
icac
ión
de
pro
ceso
s La solución:Crear grupos de procesos (o hilos) que reciben igual
proporción de tiempo de CPUCada grupo = grupo de reparto equitativoSi un proceso/hilo crea otro proceso/hilo, el proceso/hilo
creado pertenecerá al mismo grupo de reparto equitativo.
G1
G2 G3P1
P2
P3
P4
P5
P6
51
5. Métodos apropiativos
Tem
a 4:
Pla
nif
icac
ión
de
pro
ceso
s 1. Siguiente el más corto, con apropiación (PSJN)
2. Planificación por prioridades
3. Planificación por turno rotatorio (Round Robin)
4. Planificación por colas multinivel
5. Planificación por reparto equitativo
6. Planificación por peor servicio
52
5.6 Planificación por peor servicio
Tem
a 4:
Pla
nif
icac
ión
de
pro
ceso
s Definir alguna medida de cómo de beneficiado o perjudicado está resultando un proceso en el reparto. Ejemplos:
Tiempo que lleva en la lista de procesos preparadosTiempo total de CPU recibido en pasado recienteRelación entre tiempo teórico correspondiente y tiempo
recibido…
El planificador asigna CPU a aquel proceso que esté siendo peor atendido
HPRN: ejemplo (no apropiativo) de implementación