Planificación con Prioridades Fijas
Dr. Pedro Mejía Alvarez
CINVESTAV-IPN, Sección de Computación
Dr. Pedro Mejía Alvarez
Sistemas de Tiempo Real
Transparencia 1
Indice
• Planificación con prioridades estaticas
• Tareas periódicas independientes
•
•
•
•
•
Modelo Rate Monotonic
Factor de Utilización
Instante crítico
Análisis de tiempo de respuesta
Planificación Deadline Monotonic
Dr. Pedro Mejía Alvarez
Sistemas de Tiempo Real
Transparencia 2
Planificación con prioridades fijas
Las tareas se ejecutan como
• procesos concurrentes
Una tarea puede estar en varios
• estados
Las tareas ejecutables se
• despachan para su ejecución
en orden de prioridad
El despacho puede hacerse
—
—
con desalojo
sin desalojo
activar
suspender
lista
desalojar
despachar
ejecutandose
bloquear
En general supondremos
• prioridades fijas con desalojo
Dr. Pedro Mejía Alvarez
suspendida
Sistemas de Tiempo Real
bloqueada
Transparencia 3
activar
Modelo Rate Monotonic
La asignación de mayor prioridad a las tareas de
menor período ( rate monotonic scheduling:
Liu & Layland ) es óptima para el modelo de tareas
simple ( tareas periódicas, independientes, con plazos
iguales a los períodos )
Si se puede garantizar los plazos de un sistema de
tareas con otra asignación de prioridades, se pueden
garantizar con la asignación monótona en frecuencia
Dr. Pedro Mejía Alvarez
Sistemas de Tiempo Real
Transparencia 4
Modelo RM
• Las instancias de la tareas periodica i se activan
regularmente con una frecuencia constante. El intervalo
Ti entre dos instancias consecutivas es el periodo de la tarea.
•Todas las instancias de la tarea i tienen el mismo tiempo
(constante) de ejecución (peor caso) Ci.
•Todas las instancias de una tarea periodica i tienen el
mismo plazo relativo Di, el cual es igual al periodo Ti.
• Asumiremos no se comparten recursos entre tareas
•No existen restricciones de precedencia entre las tareas.
Dr. Pedro Mejía Alvarez
Sistemas de Tiempo Real
Transparencia 5
Modelo RM
• Todos las tareas se ejecutan en un solo procesador
• Tiempo en ejecutar el cambio de contexto = 0
• Inicialmente no tendremos tareas aperiodicas.
•La tarea de mas alta prioridad (y menor periodo) se ejecuta
primero. Si hay tareas de igual prioridad, se escoge
“arbitrariamente”.
• Las tareas son expulsables.
•Las tareas no se pueden suspender por si mismas, por ejemplo
por operaciones de E/S.
•Las tareas se inician tan pronto como arriban al sistema, y tan
pronto como se marca su inicio de instancia.
Despues trataremos el tema de las tareas aperiodicas
y de compartir recursos
Dr. Pedro Mejía Alvarez
Sistemas de Tiempo Real
Transparencia 6
Planificación basada en Prioridades
• Rate-Monotonic
(2, 1)
(5, 2.5)
missed deadline
• Earliest Deadline First
(2, 1)
(5, 2.5)
• Shortest slack time first
(2, 1)
(5, 2.5)
0
Dr. Pedro Mejía Alvarez
1
2
3
4
5
Sistemas de Tiempo Real
6
7
8
9
Transparencia 7
10
Factor de utilización
•
La cantidad
N
U 

j 1
Cj
Tj
es el factor de utilización del procesador
• Es una medida de la carga del procesador para un
conjunto de tareas
• En un sistema monoprocesador la prueba de utilizacion
consiste en verificar:
U< 1
Dr. Pedro Mejía Alvarez
Sistemas de Tiempo Real
Transparencia 8
Factor de utilización
La prueba del factor de utilización puede tener 1 de
3 resultados:
•
•
0 < U < Umin(N)
----- Éxito
Umin(N) < U < 1.0 ----- Prueba inconclusa
•1.0 < U
----- Sobrecarga
La prueba de la utilización es conservadora
Es necesario una prueba mas precisa.
Dr. Pedro Mejía Alvarez
Sistemas de Tiempo Real
Transparencia 9
Condición de garantía de los plazos
basada en la utilización
• Para el modelo simple, con prioridades monótonas
en frecuencia, los plazos están garantizados si
U 
N

C
j
j 1 T j
•

 N  2
1/ N
1

La cantidad
Umin = N ( 21/N
- 1)
es la utilización mínima garantizada para N tareas
Dr. Pedro Mejía Alvarez
Sistemas de Tiempo Real
Transparencia 10
Utilización mínima garantizada
N
N0
1
1 .0 0 0
2
0 .8 2 8
3
0 .7 7 9
4
0 .7 5 6
5
0 .7 4 3
lim n   U 0  N   log 2  0 , 693
Dr. Pedro Mejía Alvarez
Sistemas de Tiempo Real
Transparencia 11
Ejemplo 1
T a re a
T
C
P
U
1
30
10
3
0 .3 3 3
2
40
10
2
0 .2 5 0
3
50
12
1
0 .2 4 0
El sistema no cumple la
prueba de utilización
(U > 0.779)
La tarea 3 falla en t = 50
0 .8 2 3
1
2
fallo!
3
0
20
Dr. Pedro Mejía Alvarez
40
60
80
100
Sistemas de Tiempo Real
120
140
160
Transparencia 12
Ejemplo 2
T a re a
T
C
P
U
1
16
4
3
0 .2 5 0
2
40
5
2
0 .1 2 5
3
80
32
1
0 .4 0 0
Este sistema está
garantizado
(U < 0.779)
0 .7 7 5
1
2
3
0
10
Dr. Pedro Mejía Alvarez
20
30
40
50
Sistemas de Tiempo Real
60
70
80
Transparencia 13
Ejemplo 3
T a re a
T
C
P
U
1
20
5
3
0 .2 5 0
2
40
10
2
0 .2 5 0
3
80
40
1
0 .5 0 0
Este sistema no pasa la
prueba (U < 0.779),
pero se cumplen los plazos
1 .0 0 0
1
2
3
0
10
Dr. Pedro Mejía Alvarez
20
30
40
50
Sistemas de Tiempo Real
60
70
80
Transparencia 14
Rate Monotonic
•RMS no puede utilizar 100% del CPU, aunque el tiempo
de cambio de contexto sea cero. A menos que las tareas
sean harmónicas.
•Tareas Harmónicas: Los periodos de las tareas son
múltiplos unos de otros.
•Segun estudios estadisticos las tareas llegan a utilizar
hasta un 90% del CPU.
•Ventajas: Su implementación es facil, eficiente y
predecible.
•Desventajas:desperdicio del CPU.
Dr. Pedro Mejía Alvarez
Sistemas de Tiempo Real
Transparencia 15
Instante crítico
• El cronograma se puede utilizar para comprobar si
se cumplen los plazos
• Hay que trazar el cronograma durante un hiperperíodo
completo
• En el caso más desfavorable, H = O(NN )
• El tiempo de respuesta es máximo cuando todas las
tareas se activan a la vez
• Se denomina instante crítico
• Si el instante inicial es crítico basta comprobar la
primera instancia de cada tarea. No hay que analisar
todo el hiperperiodo.
Dr. Pedro Mejía Alvarez
Sistemas de Tiempo Real
Transparencia 16
Análisis del tiempo de respuesta
• La prueba del factor de utilización no es exacta, ni se
puede generalizar a modelos de tareas más complejos
• La construcción de un cronograma es compleja,
incluso considerando que el instante inicial es crítico
• Veremos una prueba basada en el cálculo del tiempo
de respuesta de cada tarea
Dr. Pedro Mejía Alvarez
Sistemas de Tiempo Real
Transparencia 17
Ecuación del tiempo de respuesta
Cj
j
Cj
j
Rj
Rj = C j + I j
El tiempo de respuesta de una tarea es la suma de
su tiempo de cómputo más la interferencia que sufre
por la ejecución de tareas más prioritarias
Dr. Pedro Mejía Alvarez
Sistemas de Tiempo Real
Transparencia 18
Ecuación del tiempo de respuesta
1
2
3
0
10
20
30
40
50
60
70
80
R3
R3 = C3 + I3
Dr. Pedro Mejía Alvarez
Sistemas de Tiempo Real
Transparencia 19
Cálculo de la interferencia máxima
j
Cj
Cj
j
Rj
Para una tarea
de prioridad superior
Para todas las tareas
de prioridad superior
Dr. Pedro Mejía Alvarez
Ii
j
R 
  i C

 Tj 

 Rj
Ij   
j h p ( i ) 
 Tj
Sistemas de Tiempo Real
j

 Cj

Transparencia 20
Cálculo del tiempo de respuesta
La ecuación del tiempo de respuesta queda así:
 Rj
Rj  Cj   
j hp ( j ) 
 Tj

Cj

Rj es la solución mínima de la ecuación
Wj
W  Cj   
j hp ( j ) 
 Tj
•
•

 Cj

La ecuación no es continua ni lineal
No se puede resolver analíticamente
Dr. Pedro Mejía Alvarez
Sistemas de Tiempo Real
Transparencia 21
Iteración lineal
La ecuación del tiempo de respuesta se puede
resolver mediante la relación de recurrencia
Wi
n 1
W n
 Ci    i
j hp ( i ) 
 Tj

 Cj

Un valor inicial aceptable es
Wi  C i 
0
C
j
j hp ( i )
Se termina cuando
a) W n  1  W n , o bien
b) W n  1  T j (no se cumple el plazo)
Dr. Pedro Mejía Alvarez
Sistemas de Tiempo Real
Transparencia 22
Ejemplo 4
T a re a
T
C
P
R
1
7
3
3
3
2
12
3
2
6
3
20
5
1
20
 3:
W 3  5  3  3  11;
0
 11 
W  5
3 
 7 
 11 
 3  14 ;
 12 
W3  5 
 14 
3 
 7 
 14 
 3  17 ;
 12 
W3  5 
 17 
 17 
3 
 3  20 ;
 7 
 12 
1
3
2
 1:
 2:
W1
W
0
0
2
 3;
 3  3  6;
W2  3 
1
3
6
3  6
 7 
W
4
3
 20 
 5
3 
 7 
 20 
 3  20
 12 
Todas las tareas tienen sus plazos garantizados
Tenemos una condición suficiente y necesaria
Dr. Pedro Mejía Alvarez
Sistemas de Tiempo Real
Transparencia 23
Deadline Monotonic
Cuando los plazos son menores o iguales que los
períodos, la asignación de mayor prioridad a las
tareas de menor plazo de respuesta
(deadline monotonic scheduling) es óptima

El tiempo de respuesta se calcula de la misma forma
que con la asignación monótona en frecuencia
—
se termina cuando W
—
o cuando W
Dr. Pedro Mejía Alvarez
n+1
n
=W ,
i
i
n+1
>D i
i
Sistemas de Tiempo Real
Transparencia 24
Descargar

Cap10: Planificacion por Prioridades Fijas