La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

UPV - EHU MOISE Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores 1 Introducción al tiempo real.

Presentaciones similares


Presentación del tema: "UPV - EHU MOISE Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores 1 Introducción al tiempo real."— Transcripción de la presentación:

1 UPV - EHU MOISE Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores 1 Introducción al tiempo real en sistemas empotrados Departamento de Arquitectura y Tecnología de Computadores Universidad del País Vasco / Euskal Herriko Unibertsitatea Master en Ingeniería de Sistemas Empotrados

2 UPV - EHU MOISE Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores 2 Contenido Introducción Soporte de interrupciones Conceptos de sistemas operativos Planificación en sistemas de tiempo real Mecanismos de sincronización y comunicación Planificación de tiempo real con recursos compartidos

3 UPV - EHU MOISE Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores 3 Planificación en sistemas de tiempo real CONTENIDO Introducción Modelo de tareas de tiempo real Criterios para la planificación en tiempo real Políticas de planificación para tiempo real Planificación con tareas aperiódicas BIBIOGRAFIA Q. Li: Real-Time concepts for embedded systems. CMP Books, J. Liu: Real-Time Systems, Prentice-Hall, 2000 H. Kopetz: Real-Time Systems: design principles for distributed embedded applications. Kluwer, J.A. de la Puente et al: Introducción a los sistemas de tiempo real. J.A. de la Puente: Diseño de sistemas de tiempo real. str.pdf

4 UPV - EHU MOISE Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores 4 Introducción Dado un conjunto de tareas, se trata de planificar su ejecución de forma que todas ellas cumplan los plazos. Requiere políticas de planificación específicas.

5 UPV - EHU MOISE Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores 5 Introducción Enfoques (1) Algunos sistemas operativos soportan procesos de clase de tiempo real. –Son procesos con prioridades estáticas más altas que los procesos de tiempo compartido. –Ejemplos: Unix SVR4, Windows –Sólo adecuados para sistemas flexibles (soft real- time): Contienen código no expulsable en el núcleo. En general, demasiado voluminosos para sistemas empotrados y poco fiables.

6 UPV - EHU MOISE Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores 6 Introducción Enfoques (2) Enfoque de máquina virtual –Un núcleo RT planifica el SO como una tarea más. –Ejemplo: RT-Linux –El núcleo RT intercepta las interrupciones del hardware, por lo que la ejecución del SO puede ser interrumpida en cualquier momento. –Es posible comunicar tareas mediante colas FIFO. (Extraído del curso de J.A. de la Puente, UPM)

7 UPV - EHU MOISE Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores 7 Introducción Enfoques (3) Sobre la máquina desnuda: fabricar un núcleo básico ad-hoc con un planificador de tareas de tiempo real. –Costoso en tiempo de desarrollo. (Extraído del curso de J.A. de la Puente, UPM)

8 UPV - EHU MOISE Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores 8 Introducción Enfoques (4) Sistemas Operativos de Tiempo Real (RTOS) específicos. –Flexibles –Ejemplos: LynxOS, QNX, VxWorks, FreeRTOS, MARTE (Univ. de Cantabria)… –Estándar POSIX: apartados para sistemas de tiempo real que definen normas y servicios específicos a incluir. (Extraído del curso de J.A. de la Puente, UPM)

9 UPV - EHU MOISE Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores 9 Modelo de tareas de tiempo real Acción. Mínima cantidad de cómputo en un sistema de tiempo real. –Ejemplo: decodificar un cuadro de video. –Requiere un recurso de cómputo. Tarea. Conjunto de acciones repetidas a lo largo del tiempo. –Ejemplo: visualizar una secuencia de video. =

10 UPV - EHU MOISE Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores 10 Modelo de tareas de tiempo real Instante de activación de la acción, r k –La acción puede empezar a ejecutarse. límite de la acción, d k. –La acción debe haber terminado Tarea periódica: r k = r 0 + kT –Habitualmente: r k+1 = d i y entonces el periodo es: T = d k r k Tarea aperiódica: r k+1 r k variable. J0J0 J1J1 J2J2 r0r0 r1r1 r2r2 r3r3 d0d0 d1d1 d2d2

11 UPV - EHU MOISE Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores 11 JkJk RkRk Modelo de tareas de tiempo real Plazo de ejecución, D k = d k r k –Condición necesaria: C k < D k Tiempo de respuesta, R k CkCk DkDk rkrk dkdk

12 UPV - EHU MOISE Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores 12 Modelo de tareas de tiempo real Plazos Plazo estricto –Todas las acciones deben ocurrir dentro del plazo –Los fallos pueden ser catastróficos –Ejemplo: sistema de control de vuelo Plazo flexible –Se pueden incumplir plazos de vez en cuando –El valor de la respuesta decrece con el paso del tiempo –Ejemplo: sistema de adquisición Plazo firme –Se pueden perder plazos ocasionalmente –Las respuestas fuera de plazo no tienen valor –Ejemplo: Sistemas multimedia

13 UPV - EHU MOISE Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores 13 Modelo de tareas de tiempo real Plazos (Extraído del curso de J.A. de la Puente, UPM)

14 UPV - EHU MOISE Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores 14 Modelo de tareas de tiempo real Plazos Sistemas garantizados –Plazos estrictos –Validación Sistemas de esfuerzo óptimo (best-effort) –Plazos flexibles –Requisitos estadísticos –Criterios de Calidad de Servicio (QoS): Tasa de cumplimiento del plazo Tiempos de respuesta etc

15 UPV - EHU MOISE Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores 15 Modelo de tareas de tiempo real Parámetros N tareas periódicas 1 procesador Parámetros temporales de las tareas: –Tarea i : (Φ i, T i, C i, D i ) –Una acción J i,k Se activa en r i,k = Φ i + kT i Debe terminar antes de d i,k = Φ i + kT i + D i Habitualmente: D i = T i

16 UPV - EHU MOISE Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores 16 Criterios para la planificación en tiempo real Dado un conjunto de tareas de tiempo real { 1, 2, …, N } el objetivo es proporcionar una planificación viable. Condición necesaria para la viabilidad (para tareas periódicas): U= C i /T i < 1 Tareas aperiódicas: encontrar periodo mínimo (si es posible) y expresarlas como periódicas con ese periodo.

17 UPV - EHU MOISE Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores 17 Criterios para la planificación en tiempo real La viabilidad es un criterio absoluto en sistemas de plazo estricto. Sistemas de plazo no estricto: –Plazo flexible: minimizar la magnitud de los retrasos. –Plazo firme: minimizar el número de retrasos.

18 UPV - EHU MOISE Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores 18 Criterios para la planificación en tiempo real Ejemplo ¿viable? ΦTCD

19 UPV - EHU MOISE Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores 19 Políticas de planificación para tiempo real Tipos de planificación Según cuándo se elabora la planificación: –Planificación estática Todos los parámetros temporales son fijos y conocidos. Puede establecerse un hiperperiodo (m.c.m. de todos los T i ). El plan se elabora antes de la ejecución y se almacena en una tabla. El planificador se limita a consultar la tabla en determinados instantes para seleccionar la tarea a ejecutar. –Planificación dinámica No existe un plan preestablecido.

20 UPV - EHU MOISE Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores 20 Políticas de planificación para tiempo real. Ejecutivo cíclico Planificación estática con un esquema periódico. ΦTCD Periodo principal: H = mcm(T i ) = Periodo secundario: T S = 4

21 UPV - EHU MOISE Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores 21 Políticas de planificación para tiempo real. Ejecutivo cíclico Plan cíclico: Ciclo secundario Acciones a activar

22 UPV - EHU MOISE Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores 22 Políticas de planificación para tiempo real. Ejecutivo cíclico ¿Cómo definir el periodo secundario, T S ? Condiciones: –La ejecución de cada acción debe caber en un ciclo. –Debe ser un divisor entero del periodo de alguna tarea (y por lo tanto de H). –Entre el periodo de activación de una acción y su tiempo límite debe de haber al menos un ciclo completo.

23 UPV - EHU MOISE Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores 23 Políticas de planificación para tiempo real. Ejecutivo cíclico No es posible cumplir simultáneamente las condiciones (1) y (3). Solución: segmentar tareas. ΦTCD

24 UPV - EHU MOISE Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores 24 Políticas de planificación para tiempo real. Ejecutivo cíclico con segmentación de tareas ΦTCD

25 UPV - EHU MOISE Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores 25 Políticas de planificación para tiempo real. Ejecutivo cíclico. Limitaciones. En general, el problema de construir el plan cíclico es muy complejo (NP-duro). Sólo apto para tareas periódicas.

26 UPV - EHU MOISE Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores 26 Políticas de planificación para tiempo real. Basadas en prioridades Las tareas son expulsables. Admiten tareas aperiódicas (y esporádicas). Prioridades fijas: –Rate Monotonic (RM). Mayor prioridad para las tareas de menor periodo. –Deadline Monotonic (DM). Mayor prioridad para las tareas de plazo más corto. (RM y DM son equivalentes cuando D i = T i ). Prioridades dinámicas: –Earliest Deadline First (EDF). Se planifica la tarea cuyo plazo está más cercano a expirar. La condición de viabilidad (U<1) es necesaria y suficiente para que EDF encuentre una forma de cumplir todos los plazos.

27 UPV - EHU MOISE Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores 27 Políticas de planificación para tiempo real. RM ΦTCD

28 UPV - EHU MOISE Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores 28 Políticas de planificación para tiempo real. DM vs RM ΦTCD RM 4 D 4 se cumple! DM

29 UPV - EHU MOISE Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores 29 Políticas de planificación para tiempo real. EDF ΦTCD

30 UPV - EHU MOISE Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores 30 Políticas de planificación para tiempo real. EDF ΦTCD

31 UPV - EHU MOISE Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores 31 Planificación con tareas aperiódicas Tarea aperiódica –Se activa como respuesta a un suceso externo. –Puede tener restricciones de tiempo o no. –Tarea esporádica: Tarea aperiódica con restricciones de tiempo críticas. Objetivos: –Garantizar plazos de las tareas críticas (esporádicas y periódicas). –Buenos tiempos de respuesta para las aperiódicas no críticas.

32 UPV - EHU MOISE Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores 32 Planificación con tareas aperiódicas. Políticas Procesamiento en segundo plano –Prioridades bajas para las tareas aperiódicas no críticas. Procesamiento por interrupciones –Las tareas aperiódicas se tratan inmediatamente. Reserva de ancho de banda –Reserva a priori de capacidad de CPU para tareas aperiódicas. –Se procesan inmediatamente. Extracción dinámica de holgura –Reserva de capacidad de CPU para tareas aperiódicas en tiempo de ejecución.


Descargar ppt "UPV - EHU MOISE Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores 1 Introducción al tiempo real."

Presentaciones similares


Anuncios Google