Introduccin a los sistemas de tiempo real Informtica

  • Slides: 52
Download presentation
Introducción a los sistemas de tiempo real Informática III El tiempo es un tirano.

Introducción a los sistemas de tiempo real Informática III El tiempo es un tirano. . .

Objetivos Introducir conceptos básicos relativos a los sistemas de tiempo real (STR) Examinar sus

Objetivos Introducir conceptos básicos relativos a los sistemas de tiempo real (STR) Examinar sus características Analizar técnicas y herramientas para el diseño de los STR Informática III Ing. Nora Blet Pág. 2

Referencias Alan Burns, Andy J. Wellings "Sistemas de Tiempo Real y Lenguajes de Programación",

Referencias Alan Burns, Andy J. Wellings "Sistemas de Tiempo Real y Lenguajes de Programación", Addison-Wesley (3º edición) cap. 1 y 2 Transparencias de Juan Antonio de la Puente http: //polaris. dit. upm. es/~jpuente/ y … Informática III Ing. Nora Blet Pág. 3

Definición de Sistema de tiempo real Sistema informático que debe responder a estímulos generados

Definición de Sistema de tiempo real Sistema informático que debe responder a estímulos generados por su entorno físico (incluido el paso del tiempo físico) en un plazo de tiempo finito y especificado Informática III Ing. Nora Blet Pág. 4

Definición de Sistema de tiempo real Interacciona repetidamente con su entorno físico: Realizando acciones

Definición de Sistema de tiempo real Interacciona repetidamente con su entorno físico: Realizando acciones de control sobre él Reaccionando a sus cambios La corrección de los mismos depende no sólo del resultado lógico de la computación (corrección lógica), sino también del tiempo en el que se producen los resultados (corrección temporal). (Stankovic, 1988) Informática III Ing. Nora Blet Pág. 5

Definición de Sistemas de tiempo real El tiempo en el que se ejecutan las

Definición de Sistemas de tiempo real El tiempo en el que se ejecutan las acciones es significativo eventos respuestas e 1 e 2 e 3 r 1 r 2 r 3 Sistema de Tiempo Real en e 1 e 2 r 1 e 3 r 2 e 1 r 3 r 1 t rn Informática III Ing. Nora Blet Pág. 6

Tiempo real vs. rapidez En un análisis, que permanece válido aún hoy día, a

Tiempo real vs. rapidez En un análisis, que permanece válido aún hoy día, a 22 años, Stankovic lamenta el error de confundir tiempo real con rapidez El STR debe ser suficientemente rápido para cumplir los requerimientos pero, que un sistema sea rápido no implica que sea un STR La rapidez del STR la fijan la naturaleza de los estímulos del entorno, con los cuales tiene que tratar (propio de cada sistema) La clave es la previsibilidad! Informática III Ing. Nora Blet Pág. 7

Tiempo real vs. rapidez Informática III Ing. Nora Blet Pág. 8

Tiempo real vs. rapidez Informática III Ing. Nora Blet Pág. 8

Tiempos de respuesta en distintos dominios Informática III Ing. Nora Blet Pág. 9

Tiempos de respuesta en distintos dominios Informática III Ing. Nora Blet Pág. 9

Evolución de la informática III Ing. Nora Blet Pág. 10

Evolución de la informática III Ing. Nora Blet Pág. 10

Sistemas embebidos Informática III Ing. Nora Blet Pág. 11

Sistemas embebidos Informática III Ing. Nora Blet Pág. 11

Sistemas embebidos Informática III Ing. Nora Blet Pág. 12

Sistemas embebidos Informática III Ing. Nora Blet Pág. 12

Sistemas embebidos Muchos STR forman parte de un sistema de ingeniería más amplio, tal

Sistemas embebidos Muchos STR forman parte de un sistema de ingeniería más amplio, tal como es el caso de muchos sistemas de uso común en la industria, transporte, comunicaciones, medicina, el hogar, etc. : Aviones Trenes Autos Teléfonos móviles Televisores, etc. Informática III Ing. Nora Blet Pág. 13

Sistemas embebidos Realizan funciones de control de otros sistemas Adaptado de Kopetz (1997) Informática

Sistemas embebidos Realizan funciones de control de otros sistemas Adaptado de Kopetz (1997) Informática III Ing. Nora Blet Pág. 14

Características Los recursos están limitados Procesador, memoria, pantalla, etc. Los dispositivos de entrada y

Características Los recursos están limitados Procesador, memoria, pantalla, etc. Los dispositivos de entrada y salida son especiales para cada sistema No hay teclado ni pantalla normales El computador debe reaccionar a tiempo ante los cambios en el sistema que controla Una acción retrasada puede ser inútil o peligrosa Ejemplo: imágenes de TV, sistema de frenado ABS El desarrollo de software para sistemas embebidos tiene requisitos especiales Informática III Ing. Nora Blet Pág. 15

Tareas de tiempo real Informática III Ing. Nora Blet Pág. 16

Tareas de tiempo real Informática III Ing. Nora Blet Pág. 16

Tareas de tiempo real Las actividades de un STR se llaman tareas Son activadas

Tareas de tiempo real Las actividades de un STR se llaman tareas Son activadas por estímulos del entorno (incluido el paso del tiempo). Una tarea es una secuencia de instrucciones que se ejecuta en forma concurrente y compartiendo recursos con otras tareas Se las implementa mediante threads, procesos, etc. Informática III Ing. Nora Blet Pág. 17

Tareas de tiempo real Tienen distintos tipos de propiedades Funcionales: ¿Qué hacen? Temporales: ¿Cuándo

Tareas de tiempo real Tienen distintos tipos de propiedades Funcionales: ¿Qué hacen? Temporales: ¿Cuándo lo hacen? Fiabilidad, seguridad, etc. El comportamiento temporal de las tareas se especifica mediante sus atributos temporales ¿Cuándo se ejecutan? : Esquema de activación ¿Qué plazo tienen para ejecutar cada acción? Informática III Ing. Nora Blet Pág. 18

Tareas de tiempo real Informática III Ing. Nora Blet Pág. 19

Tareas de tiempo real Informática III Ing. Nora Blet Pág. 19

Ejecución de una tarea de tiempo real Informática III Ing. Nora Blet Pág. 20

Ejecución de una tarea de tiempo real Informática III Ing. Nora Blet Pág. 20

Atributos temporales Plazo de respuesta Absoluto: tiempo límite para terminar Relativo: intervalo desde la

Atributos temporales Plazo de respuesta Absoluto: tiempo límite para terminar Relativo: intervalo desde la activación Se trata de garantizar que la ejecución de cada tarea termine dentro del plazo Informática III Ing. Nora Blet Pág. 21

Atributos temporales Informática III Ing. Nora Blet Pág. 22

Atributos temporales Informática III Ing. Nora Blet Pág. 22

Atributos temporales Activación Periódica: a intervalos regulares, con período T Aperiódica: cada vez que

Atributos temporales Activación Periódica: a intervalos regulares, con período T Aperiódica: cada vez que ocurre un suceso determinado Esporádica: separación mínima entre activaciones T Estocástica, irregular o a rachas Informática III Ing. Nora Blet Pág. 23

Tipos de requisitos temporales ¿Qué pasa sino se cumplen? Tiempo real estricto (hard real-time)

Tipos de requisitos temporales ¿Qué pasa sino se cumplen? Tiempo real estricto (hard real-time) Todas las acciones deben terminar dentro del plazo especificado. Ejemplo: control de frenado Tiempo real flexible (soft real-time) Se pueden perder plazos de vez en cuando El valor de la respuesta decrece con el tiempo Ejemplo: adquisición de datos Tiempo real firme (firm real-time) Se pueden perder plazos ocasionalmente Una respuesta tardía no tiene valor Ejemplo: Sistema multimedia Informática III Ing. Nora Blet Pág. 24

Tipos de requisitos temporales Informática III Ing. Nora Blet Pág. 25

Tipos de requisitos temporales Informática III Ing. Nora Blet Pág. 25

Ejemplos de Sistemas en tiempo real Informática III Ing. Nora Blet Pág. 26

Ejemplos de Sistemas en tiempo real Informática III Ing. Nora Blet Pág. 26

Ejemplos de Sistemas en tiempo real Informática III Ing. Nora Blet Pág. 27

Ejemplos de Sistemas en tiempo real Informática III Ing. Nora Blet Pág. 27

Ejemplos de Sistemas en tiempo real Informática III Ing. Nora Blet Pág. 28

Ejemplos de Sistemas en tiempo real Informática III Ing. Nora Blet Pág. 28

Sistema de computador embebido generalizado Reloj de tiempo real Control digital Registro de datos

Sistema de computador embebido generalizado Reloj de tiempo real Control digital Registro de datos Sistema controlado Interfaz Sistema de monitoreo remoto Base de datos Visualización de datos Consola de operador Informática III Dispositivos de presentación Interfaz de operador Ing. Nora Blet Real-Time Computer Pág. 29

Características de los Sistemas en tiempo real Grandes y complejos La variedad de funciones

Características de los Sistemas en tiempo real Grandes y complejos La variedad de funciones aumenta la complejidad incluso en sistemas relativamente pequeños La adaptación a entornos cambiantes las aplicaciones deben evolucionar continuamente los STR deben ser extensibles Informática III Ing. Nora Blet Pág. 30

Características de los Sistemas en tiempo real Manipulación de números reales Ejemplo: Se debe

Características de los Sistemas en tiempo real Manipulación de números reales Ejemplo: Se debe tener un modelo matemático que relacione el calor aplicado y el incremento de temperatura del termo números en punto flotante Informática III Ing. Nora Blet Pág. 31

Características de los Sistemas en tiempo real Extremadamente fiables y seguros (dependability) Muchos ejemplos

Características de los Sistemas en tiempo real Extremadamente fiables y seguros (dependability) Muchos ejemplos dramáticos ilustran que el hardware y el software de los computadores debe ser fiable y seguro El tamaño y complejidad de los STR exacerban el problema de la fiabilidad Mecanismos para recuperar fallos (esperados y no esperados) Informática III Ing. Nora Blet Pág. 32

Características de los Sistemas en tiempo real Simultaneidad de acciones (concurrencia) Los dispositivos físicos

Características de los Sistemas en tiempo real Simultaneidad de acciones (concurrencia) Los dispositivos físicos controlados funcionan al mismo tiempo Las tareas que los controlan actúan concurrentemente Informática III Ing. Nora Blet Pág. 33

Características de los Sistemas en tiempo real Determinismo temporal Acciones en intervalos de tiempo

Características de los Sistemas en tiempo real Determinismo temporal Acciones en intervalos de tiempo determinados Es fundamental que el comportamiento temporal de los STR sea determinista o, al menos, previsible No confundir con eficiencia El STR debe responder correctamente en todas las situaciones En los STR estrictos hay que prever el comportamiento en el peor caso posible Informática III Ing. Nora Blet Pág. 34

Características de los Sistemas en tiempo real Interacción con el hardware Los manejadores de

Características de los Sistemas en tiempo real Interacción con el hardware Los manejadores de dispositivos forman parte del software de aplicación Implementación eficiente Puesto que los STR son críticos respecto al tiempo, este requisito es más importante que en otro tipo de sistemas Informática III Ing. Nora Blet Pág. 35

Desarrollo de Sistemas en tiempo real Informática III Ing. Nora Blet Pág. 36

Desarrollo de Sistemas en tiempo real Informática III Ing. Nora Blet Pág. 36

Desarrollo de Sistemas en tiempo real Los métodos, herramientas y tecnologías que se usan

Desarrollo de Sistemas en tiempo real Los métodos, herramientas y tecnologías que se usan para construir otros tipos de sistemas no sirven para los STR No son lo suficientemente fiables Sólo contemplan tiempos de respuesta medio, no el peor No garantizan los requisitos temporales Las plataformas de desarrollo y ejecución suelen ser diferentes Es difícil hacer pruebas en la plataforma de ejecución Es difícil medir los tiempos con precisión Informática III Ing. Nora Blet Pág. 37

Desarrollo cruzado Informática III Ing. Nora Blet Pág. 38

Desarrollo cruzado Informática III Ing. Nora Blet Pág. 38

Aspectos de un sistema Funcionalidad Relación entre entradas y salidas No se considera concurrencia,

Aspectos de un sistema Funcionalidad Relación entre entradas y salidas No se considera concurrencia, sincronización, tiempo real, fiabilidad, seguridad, etc. Arquitectura Componentes definidos por sus interfaces Concurrencia y tiempo real Hebras, sincronización Planificación y análisis temporal Implementación Código de aplicación Plataforma: RTOS, middleware Informática III Ing. Nora Blet Pág. 39

Diseño de Sistemas de tiempo real Informática III Ing. Nora Blet Pág. 40

Diseño de Sistemas de tiempo real Informática III Ing. Nora Blet Pág. 40

Diseño de Sistemas de tiempo real Informática III Ing. Nora Blet Pág. 41

Diseño de Sistemas de tiempo real Informática III Ing. Nora Blet Pág. 41

Diseño de Sistemas de tiempo real Informática III Ing. Nora Blet Pág. 42

Diseño de Sistemas de tiempo real Informática III Ing. Nora Blet Pág. 42

Diseño de Sistemas en tiempo real Informática III Ing. Nora Blet Pág. 43

Diseño de Sistemas en tiempo real Informática III Ing. Nora Blet Pág. 43

Diseño de Sistemas de tiempo real Las actividades de desarrollo de los STR incluyen

Diseño de Sistemas de tiempo real Las actividades de desarrollo de los STR incluyen las tradicionales de otros sistemas, aunque tienen requerimientos adicionales Informática III Ing. Nora Blet Pág. 44

Integración de métodos y herramientas Informática III Ing. Nora Blet Pág. 45

Integración de métodos y herramientas Informática III Ing. Nora Blet Pág. 45

Integración de métodos y herramientas Informática III Ing. Nora Blet Pág. 46

Integración de métodos y herramientas Informática III Ing. Nora Blet Pág. 46

Integración de métodos y herramientas Informática III Ing. Nora Blet Pág. 47

Integración de métodos y herramientas Informática III Ing. Nora Blet Pág. 47

Integración de métodos y herramientas Informática III Ing. Nora Blet Pág. 48

Integración de métodos y herramientas Informática III Ing. Nora Blet Pág. 48

Lenguajes de programación Hay varias clases de lenguajes de interés para los STR: Assembler

Lenguajes de programación Hay varias clases de lenguajes de interés para los STR: Assembler Flexibles y eficientes pero costosos y poco fiables Informática III Ing. Nora Blet Pág. 49

Lenguajes de programación Informática III Ing. Nora Blet Pág. 50

Lenguajes de programación Informática III Ing. Nora Blet Pág. 50

Lenguajes de programación Informática III Ing. Nora Blet Pág. 51

Lenguajes de programación Informática III Ing. Nora Blet Pág. 51

Lenguajes de tiempo real Informática III Ing. Nora Blet Pág. 52

Lenguajes de tiempo real Informática III Ing. Nora Blet Pág. 52