Generacion del 98
UPM
Planificación de tareas
Juan Antonio de la Puente DIT/UPM
Transparencias basadas en el capítulo 13 del libro de A. Burns y A. Wellings Real-Time Systems and Programming Languuages, 3ª edición (2001)
Objetivos
Veremos cómo planificar el uso de los recursos para poder garantizar los requisitos temporales Un método de planificación tiene dos aspectos importantes:
– Un algoritmode planificación que determina el orden de acceso de las tareas a los recursos del sistema (en particular al procesador) – Un método de análisis que permite calcular el comportamiento temporal del sistema
» Así se pude comprobar si los requisitos temporales están garantizados en todos los casos posibles » En general se estudia el peor comportamiento posible
STRL -11/11/2002 ©2001-2002 JuanAntonio de la Puente Planificación - 1
Índice
Introducción Planificación con ejecutivos cíclicos Multiprogramación
– – – – – Planificación con prioridades fijas Tareas periódicas independientes Tareas esporádicas y aperiódicas Interacción entre tareas y bloqueos Modelo de tareas generalizado
Realización de sistemas con prioridades
STRL -11/11/2002
©2001-2002 Juan Antonio de la PuentePlanificación - 2
Planificación de tareas
Un método de planificación puede ser
– estático: el análisis se puede hacer antes de la ejecución – dinámico: el análisis se hace durante la ejecución
Un método estático muy utilizado es el de planificación con prioridades fijas y desalojo
– La prioridad es un parámetro relacionado con la urgencia o la importancia de la tarea – En cada momento seejecuta la tarea con mayor prioridad de todas las ejecutables
STRL -11/11/2002
©2001-2002 Juan Antonio de la Puente
Planificación - 3
Modelo de tareas
Inicialmente consideraremos un modelo simple:
– El conjunto de tareas es estático – Todas las tareas son periódicas – Las tareas son independientes unas de otras – Los plazos de respuesta de todas las tareas son iguales a los períodosrespectivos – El tiempo de ejecución máximo de cada tarea es conocido – Las operaciones del núcleo de multiprogramación son instantáneas
STRL -11/11/2002
©2001-2002 Juan Antonio de la Puente
Planificación - 4
Parámetros de planificación
N T C D R P Número de tareas Período de activación Tiempo de ejecución máximo Plazo de respuesta Tiempo de respuesta máximo Prioridad
En el modeloanterior, para todas las tareas τi :
Ci ≤ Di = Ti
Se trata de asegurar que
R i ≤ Di
STRL -11/11/2002
©2001-2002 Juan Antonio de la Puente
Planificación - 5
Hiperperíodo
En el modelo de tareas simple, el valor
H = mcm (Ti )
se denomina hiperperíodo del sistema El comportamiento temporal se repite cada hiperperíodo
STRL -11/11/2002
©2001-2002 Juan Antonio de la PuentePlanificación - 6
Planificación con ejecutivos cíclicos
STRL -11/11/2002
©2001-2002 Juan Antonio de la Puente
Planificación - 7
Planificación cíclica
Si todas las tareas son periódicas, se puede confeccionar un plan de ejecución fijo Se trata de un esquema que se repite cada
TM = mcm(Ti )
(ciclo principal) El ciclo principal se divide en ciclos secundarios, con período
TS(TM = k ⋅ TS)
En cada ciclo secundario se ejecutan las actividades correspondientes a determinadas tareas
STRL -11/11/2002
©2001-2002 Juan Antonio de la Puente
Planificación - 8
Ejemplo
Tarea A B C D E T C 25 10 25 8 50 5 50 4 100 2
– El sistema es armónico – El ciclo principal dura 100ms – Se compone de 4 ciclos secundarios de 25ms cada uno
TM = 100ms
Ts = 25ms
A 0
BC 25
A
B
D E 50
A
B
C 75
A
B
D 100
STRL -11/11/2002
©2001-2002 Juan Antonio de la Puente
Planificación - 9
Ejecutivo cíclico
procedure Cyclic_Executive is type Cycle is mod 4; Frame : Cycle := 0; begin loop Wait_for_Interrupt; case Frame is when 0 => A; B; C; when 1 => A; B; D; E; when 2 => A; B; C; when 3 => A; B; D; end case; Frame := Frame + 1; end...
Regístrate para leer el documento completo.