Title: Sin t
1Planificación de Tareas Aperiodicas
Dr. Pedro Mejía Alvarez CINVESTAV-IPN,
Departamento de Computación
2 Indice
- Tareas Aperiodicas y Esporádicas
- Métodos de Planificación Aperiodica
- Planificación
- En segundo plano.
- Por interrupciones.
- Por servidor de consulta (pooling)
- Planificación de la Holgura
- Planificación con reserva de ancho de banda
- Servidor diferido
- Servidor esporádico
- Planificacion de la Holgura
- Earliest Deadline Last
- Total Bandwith Server
3Tareas aperiodicas y esporadicas
- Tareas aperiodicas Se activan en respuesta a un
evento externo. - Tareas esporadicas Tareas aperiodicas con
restricciones - criticas de tiempos.
- Las tareas aperiodicas arrivan en cualquier
instante de tiempo t y - se caracterizan por los siguientes parámetros
- T separación mínima entre eventos.
- C tiempo de computo máximo.
- D plazo de respuesta máximo.
- Objetivos
- Garantizar los plazos de respuesta de las tareas
esporádicas. - Obtener tiempos de respuesta bajos para las
tareas aperiodicas. - No interferir con las tareas periodicas.
4Tareas aperiodicas y esporadicas
- Dado un conjunto de tareas tareas periodicas,
como puede - planificarse una tarea aperiodica que arriva al
sistema ?
rechazo
Prueba de aceptación
esporádica
CPU
periódica
aperiodica
Colas de tareas
5Como planificar una tarea aperiodica ?
T1 (3,0.5) T2 (4,1) T3 (19,4.5) Ts
0 1 2 3 4 5
6 7 8 9 10
11 12 13 14 15
16 17 18 19
0 1 2 3 4 5
6 7 8 9 10
11 12 13 14 15
16 17 18 19
A1 (3,1) A2 (7,2)
A3
(15.5,2)
0 1 2 3 4 5
6 7 8 9 10
11 12 13 14 15
16 17 18 19
0 1 2 3 4 5
6 7 8 9 10
11 12 13 14 15
16 17 18 19
6Metodos de Planificación de Tareas Aperiodicas
Sistemas Acriticos Sistemas
Criticos Segundo Plano Extraccion de
Holgura Por interrupciones Total Banwidth
Server Polling Reserva de Ancho de
Banda
7Métodos de Planificación de tareas aperiodicas
- Segundo Plano
- La cola de jobs aperiodicas tiene la menor
prioridad en el sistema. - Las tareas periodicas son siempre aceptadas en el
sistema y siempre cumplen - sus plazos
- Simple de implementar.
- La ejecución de las tareas aperiodicas se retrasa
incontrolablemente - Por interrupciones
- El tiempo de respuesta es lo mas corto posible.
- Las tareas periódicas pueden perder plazos.
- Por polling
- Se crea una tarea periódica para tratar eventos
aperiodicos y se le asocia un tiempo - de cómputo para atenderlos.
- Cuando se activa la tarea, comprueba si hay
peticiones pendientes y las atiende. - Si no hay eventos aperiodicos pendientes, el
tiempo asignado se pierde. - Tiempo de respuesta bajo.
8Métodos de Planificación Aperiodica
Segundo plano
T1 (3,1) T2 (10,4) A (0.1,2.1)
T1 T2 A
0 1 2 3 4
5 6 7 8 9 10
11 12 13 14 15
16
Por interrupciones
T1 T2 A
0 1 2 3 4
5 6 7 8 9 10
11 12 13 14 15
16
Por polling
T1 T2 A
0 1 2 3 4
5 6 7 8 9 10
11 12 13 14 15
16
9Planificación de la Holgura
- Extracción dinámica de la holgura
- Holgura tiempo de cómputo no utilizado por
ninguna tarea - periódica.
- Las tareas no siempre usan todo el tiempo de
cómputo - asignado y la utilización del procesador suele
ser menor al - 100.
- Existen varios algoritmos para detectar la
holgura existente - Estáticos y dinámicos.
- La holgura calculada puede utilzarse para tratar
- Eventos aperiodicos.
- Fallos.
10Planificación de la Holgura
T1 (3,1) T2 (10,4)
T1 T2 HOLGURA
0 1 2 3 4
5 6 7 8 9 10
11 12 13 14 15
16
Holgura Tiempo ocioso tiempo no
utilizado Problema Busqueda y Asignacion.
11Planificación Estática de la Holgura
T1 (3,1) T2 (10,4)
T1 T2
Task 1--0 1 1 0 1 1 0
1 1 0 1 1 0 1
1 0 Task 2--0 0 0 0
0 0 0 1 1 0 0
0 0 0 0 0
Tabla de Holgura
12Planificación Dinámica de la Holgura
T1 (3,1) T2 (10,4)
T1 T2
tiempo acumulado
t td
ventana de extracción
Holgura Tiempo de extraccion - tiempo acumulado
13Earliest Deadline Last
T1 (3,1) T2 (10,4)
T1 T2 HOLGURA
0 1 2 3 4
5 6 7 8 9 10
11 12 13 14 15
16
Algoritmo Retrasar al máximo las tareas
periódicas (sin perder plazos) para atención de
tareas aperiodicas
14Total Bandwith Server
- Regla de consumo
- El servidor consume su tiempo solo cuando se
ejecuta. - Reglas de Restauracion
- R1 Inicializa es 0, y d 0.
- R2 Cuando un Job aperiodico con tiempo de
ejecución e arriva al tiempo t - a la cola de jobs aperiodicos,
inicializa d max (d,t) es/Us y es e, y - Up Us ? 1. Si d es menor o igual al
plazo de la tarea aperiodica, se - acepta para ejecución a la tarea
aperiodica. Us es la utilizacion del TBS, - y Up es la utilizacion del conjunto de
tareas periodicas - R3 Al plazo d del servidor,
- (a) Inicializa d d es/us y es e
- (b) Si el servidor esta ocioso, no se hace nada.
15Total Bandwith Server
T1 (3,0.5) T2 (4,1) T3 (19,4.5) Us
0.25
0 1 2 3 4 5
6 7 8 9 10
11 12 13 14 15
16 17 18 19
0 1 2 3 4 5
6 7 8 9 10
11 12 13 14 15
16 17 18 19
0 1 2 3 4 5
6 7 8 9 10
11 12 13 14 15
16 17 18 19
A1 (3,1) A2 (7,2)
A3 (14,2)
0 1 2 3 4 5
6 7 8 9 10
11 12 13 14 15
16 17 18 19
Tiempo reservado
d 15
1.5 1.0 0.5
16Planificación con Reserva de Ancho de Banda
- Reserva de ancho de banda
- Se reserva un tiempo de cómputo para tratar
eventos - aperiodicos, periodicamente.
- Métodos
- Servidor diferido.
- Servidor Esporadico.
- Intercambio de prioridades.
- Se diferencian en
- Como se restaura el tiempo consumido.
- Que se hace si no se usa el tiempo asignado.
- Son predecibles la asignación del tiempo es
estática.
17Servidor de Consulta (pooling)
- Reglas
- Consumo El tiempo de ejecución se consume solo
cuando el - servidor se ejecuta.
- Restauracion El tiempo de ejecución del
servidor ocurre en cada - activacion. No se conserva el tiempo de
ejecución si no hay tareas - aperiodicas listas.
- El servidor actua como una tarea, en la cual se
asigna el tiempo de - ejecucion si hay una tarea aperiodica al
principio de su activacion. -
18Servidor de Consulta (pooling)
RATE MONOTONIC
A (2.8, 1.7)
PS (3,1)
T1 (2,3.5,1.5)
T2 (0,6.5,0.5)
0 1 2 3 4
5 6 7 8 9 10
11 12 13 14 15
16
Tiempo reservado
POLLING SERVER
19Servidor Diferido
- Reglas
- Consumo El tiempo de ejecución se consume solo
cuando el - servidor se ejecuta.
- Restauracion El tiempo de ejecución del
servidor es en cada - activacion.
- Conserva el tiempo de ejecución aunque no halla
tareas aperiodicas listas. - cualquier tiempo de ejecución reservado antes
de la restauración se - pierde ( no hay acumulación de tiempo).
20Servidor Diferido con Rate Monotonic
A (2.8, 1.7)
DS (3,1)
T1 (2,3.5,1.5)
T2 (0,6.5,0.5)
0 1 2 3 4
5 6 7 8 9 10
11 12 13 14 15
16
Tiempo reservado
21Servidor Diferido con EDF
A (2.8, 1.7)
DS (3,1)
T1 (2,3.5,1.5)
T2 (0,6.5,0.5)
0 1 2 3 4
5 6 7 8 9 10
11 12 13 14 15
16
Tiempo reservado
22Servidor Diferido con EDF Segundo plano
A (2.8, 1.7)
En segundo plano
DS (3,1)
T1 (2,3.5,1.5)
T2 (0,6.5,0.5)
0 1 2 3 4
5 6 7 8 9 10
11 12 13 14 15
16
Tiempo reservado
23Servidor Esporadico (Notacion)
- T Sistema de n tareas.
- TSS Servidor esporádico con prioridad
arbitraria. - TH Subconjunto de T con mayor prioridad que TSS
- tr ultimo tiempo de restauración.
- tf Primer instante despues de tr en el cual el
servidor comienza a ejecutarse - te tiempo de restauración efectivo.
- El planificador determina el tiempo te basado
en la historia de planificación - y inicializa el proximo tiempo de restauración
a te ps - Consumo El tiempo de ejecución del servidor se
consume en cualquier - instante t despues de tr, hasta que el tiempo de
ejecución se termine - bajo cualquiera de las siguientes condiciones
- C1 El servidor esta ejecutandose.
- C2 El servidor ha ejecutado desde tr y se
suspende al tiempo t, y TH ocioso
24Servidor Esporadico (Reglas)
- Restauracion
- R1 El tiempo de ejecución se inicializa a es y
el tiempo actual tr se - registra inicialmente cuando el sistema
comienza su ejecución y cada - vez que este tiempo es restaurado
- R2 El siguiente tiempo de restauración se
determina al tiempo tf cuando - el servidor continua con su ejecución desde
el tiempo tr. Al tiempo tf, - te se inicializa al instante anterior en
que una tarea de menor prioridad - se ejecutó en (tr,tf), e inicializa tr si
TH esta ocupado (ejecutando) - durante este intervalo de tiempo. El
próximo tiempo de restauración se - inicializa a te ps.
- R3 El siguiente tiempo de restauración ocurre
excepto que se produzcan - las siguientes condiciones
- (a) Si el siguiente tiempo de restauración
te ps es antes de tf, el tiempo - se restaura tan pronto como se
termine. - (b) El tiempo se restaura al tiempo t
siempre que el sistema halla estado - ocioso antes de t y un Job periódico
inicia en t.
25Servidor Esporadico (Planificación)
T1 (3,0.5) T2 (4,1) T3 (19,4.5) Ts
(5,15)
0 1 2 3 4 5
6 7 8 9 10
11 12 13 14 15
16 17 18 19
0 1 2 3 4 5
6 7 8 9 10
11 12 13 14 15
16 17 18 19
A1 (3,1) A2 (7,2)
A3
(15.5,2)
0 1 2 3 4 5
6 7 8 9 10
11 12 13 14 15
16 17 18 19
0 1 2 3 4 5
6 7 8 9 10
11 12 13 14 15
16 17 18 19
1.5 1.0 0.5
Tiempo reservado
26Servidor Esporadico (Regla 3a)
TH
0 1 2 3 4 5
6 7 8 9 10
11 12 13 14 15
16 17 18 19
Servidor
0 1 2 3 4 5
6 7 8 9 10
11 12 13 14 15
16 17 18 19
TL
0 1 2 3 4 5
6 7 8 9 10
11 12 13 14 15
16 17 18 19
te teps tf
1.5 1.0 0.5
Tiempo reservado