Planificacin con Prioridades Fijas Dr Pedro Meja Alvarez

  • Slides: 24
Download presentation
Planificación con Prioridades Fijas Dr. Pedro Mejía Alvarez CINVESTAV-IPN, Sección de Computación Dr. Pedro

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

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

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

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

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

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 •

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 es el factor de utilización del procesador •

Factor de utilización • La cantidad 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

Factor de utilización La prueba del factor de utilización puede tener 1 de 3 resultados: • 0< U< • Umin(N) • 1. 0 < U Umin(N) ----- Éxito < U < 1. 0 ----- Prueba inconclusa ----- 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

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 • 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 Dr. Pedro Mejía Alvarez Sistemas de Tiempo Real Transparencia 11

Utilización mínima garantizada Dr. Pedro Mejía Alvarez Sistemas de Tiempo Real Transparencia 11

Ejemplo 1 El sistema no cumple la prueba de utilización (U > 0. 779)

Ejemplo 1 El sistema no cumple la prueba de utilización (U > 0. 779) La tarea 3 falla en t = 50 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 Este sistema está garantizado (U < 0. 779) 1 2 3 0

Ejemplo 2 Este sistema está garantizado (U < 0. 779) 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 Este sistema no pasa la prueba (U < 0. 779), pero se

Ejemplo 3 Este sistema no pasa la prueba (U < 0. 779), pero se cumplen los plazos 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

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

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,

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 Cj Rj Rj = C j + I

Ecuación del tiempo de respuesta Cj Cj 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

Ecuación del tiempo de respuesta 1 2 3 0 10 20 30 40 50 60 70 80 R 3 = C 3 + I 3 Dr. Pedro Mejía Alvarez Sistemas de Tiempo Real Transparencia 19

Cálculo de la interferencia máxima Cj Cj Rj Para una tarea de prioridad superior

Cálculo de la interferencia máxima Cj Cj Rj Para una tarea de prioridad superior Para todas las tareas de prioridad superior Dr. Pedro Mejía Alvarez Sistemas de Tiempo Real Transparencia 20

Cálculo del tiempo de respuesta La ecuación del tiempo de respuesta queda así: Rj

Cálculo del tiempo de respuesta La ecuación del tiempo de respuesta queda así: Rj es la solución mínima de la ecuación • • 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

Iteración lineal La ecuación del tiempo de respuesta se puede resolver mediante la relación de recurrencia Un valor inicial aceptable es Se termina cuando a) , o bien b) (no se cumple el plazo) Dr. Pedro Mejía Alvarez Sistemas de Tiempo Real Transparencia 22

Ejemplo 4 Todas las tareas tienen sus plazos garantizados Tenemos una condición suficiente y

Ejemplo 4 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

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 u 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