intro str 011

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

Upload: fred-pacompia

Post on 18-Oct-2015

24 views

Category:

Documents


0 download

TRANSCRIPT

  • Introduccin a los sistemas de tiempo real Informtica IIIEl tiempo es un tirano...

    Informtica IIIIng. Nora BletPg. *

    Objetivos Introducir conceptos bsicos relativos a los sistemas de tiempo real (STR) Examinar sus caractersticas Analizar tcnicas y herramientas para el diseo de los STR

    Informtica IIIIng. Nora BletPg. *

    ReferenciasAlan Burns, Andy J. Wellings "Sistemas de Tiempo Real y Lenguajes de Programacin", Addison-Wesley (3 edicin) cap. 1 y 2Transparencias de Juan Antonio de la Puente http://polaris.dit.upm.es/~jpuente/ y

    Informtica IIIIng. Nora BletPg. *

    Definicin de Sistema de tiempo real Sistema informtico que debe responder a estmulos generados por su entorno fsico (incluido el paso del tiempo fsico) en un plazo de tiempo finito y especificado

    Informtica IIIIng. Nora BletPg. *

    Definicin de Sistema de tiempo real Interacciona repetidamente con su entorno fsico:Realizando acciones de control sobre lReaccionando a sus cambios La correccin de los mismos depende no slo del resultado lgico de la computacin (correccin lgica), sino tambin del tiempo en el que se producen los resultados (correccin temporal). (Stankovic, 1988)

    Informtica IIIIng. Nora BletPg. *

    Definicin de Sistemas de tiempo real El tiempo en el que se ejecutan las acciones es significativo

    Informtica IIIIng. Nora BletPg. *

    Tiempo real vs. rapidez En un anlisis, que permanece vlido an hoy da, a 22 aos, Stankovic lamenta el error de confundir tiempo real con rapidezEl STR debe ser suficientemente rpido para cumplir los requerimientos pero, que un sistema sea rpido no implica que sea un STRLa rapidez del STR la fijan la naturaleza de los estmulos del entorno, con los cuales tiene que tratar (propio de cada sistema)La clave es la previsibilidad!

    Informtica IIIIng. Nora BletPg. *

    Tiempo real vs. rapidez

    Informtica IIIIng. Nora BletPg. *

    Tiempos de respuesta en distintos dominios

    Informtica IIIIng. Nora BletPg. *

    Evolucin de la informtica

    Informtica IIIIng. Nora BletPg. *

    Sistemas embebidos

    Informtica IIIIng. Nora BletPg. *

    Sistemas embebidos

    Informtica IIIIng. Nora BletPg. *

    Sistemas embebidos Muchos STR forman parte de un sistema de ingeniera ms amplio, tal como es el caso de muchos sistemas de uso comn en la industria, transporte, comunicaciones, medicina, el hogar, etc.: AvionesTrenes AutosTelfonos mvilesTelevisores, etc.

    Informtica IIIIng. Nora BletPg. *

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

    Informtica IIIIng. Nora BletPg. *

    Caractersticas Los recursos estn limitadosProcesador, memoria, pantalla, etc. Los dispositivos de entrada y salida son especiales para cada sistemaNo hay teclado ni pantalla normales El computador debe reaccionar a tiempo ante los cambios en el sistema que controlaUna accin retrasada puede ser intil o peligrosaEjemplo: imgenes de TV, sistema de frenado ABS El desarrollo de software para sistemas embebidos tiene requisitos especiales

    Informtica IIIIng. Nora BletPg. *

    Tareas de tiempo real

    Informtica IIIIng. Nora BletPg. *

    Tareas de tiempo real Las actividades de un STR se llaman tareas Son activadas por estmulos 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 tareasSe las implementa mediante threads, procesos, etc.

    Informtica IIIIng. Nora BletPg. *

    Tareas de tiempo real Tienen distintos tipos de propiedadesFuncionales: Qu hacen?Temporales: Cundo lo hacen?Fiabilidad, seguridad, etc. El comportamiento temporal de las tareas se especifica mediante sus atributos temporalesCundo se ejecutan?: Esquema de activacinQu plazo tienen para ejecutar cada accin?

    Informtica IIIIng. Nora BletPg. *

    Tareas de tiempo real

    Informtica IIIIng. Nora BletPg. *

    Ejecucin de una tarea de tiempo real

    Informtica IIIIng. Nora BletPg. *

    Atributos temporales Plazo de respuestaAbsoluto: tiempo lmite para terminarRelativo: intervalo desde la activacin Se trata de garantizar que la ejecucin de cada tarea termine dentro del plazo

    Informtica IIIIng. Nora BletPg. *

    Atributos temporales

    Informtica IIIIng. Nora BletPg. *

    Atributos temporales ActivacinPeridica: a intervalos regulares, con perodo TAperidica: cada vez que ocurre un suceso determinadoEspordica: separacin mnima entre activaciones TEstocstica, irregular o a rachas

    Informtica IIIIng. Nora BletPg. *

    Tipos de requisitos temporalesQu 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 cuandoEl valor de la respuesta decrece con el tiempoEjemplo: adquisicin de datos Tiempo real firme (firm real-time)Se pueden perder plazos ocasionalmenteUna respuesta tarda no tiene valorEjemplo: Sistema multimedia

    Informtica IIIIng. Nora BletPg. *

    Tipos de requisitos temporales

    Informtica IIIIng. Nora BletPg. *

    Ejemplos de Sistemas en tiempo real

    Informtica IIIIng. Nora BletPg. *

    Ejemplos de Sistemas en tiempo real

    Informtica IIIIng. Nora BletPg. *

    Ejemplos de Sistemas en tiempo real

    Informtica IIIIng. Nora BletPg. *

    Sistema de computador embebido generalizadoControl digitalRegistro de datosVisualizacin dedatosInterfaz de operadorInterfazSistema controladoSistema de monitoreo remotoReloj de tiempo realBase de datosConsola de operadorDispositivos depresentacinReal-Time Computer

    Informtica IIIIng. Nora BletPg. *

    Caractersticas de los Sistemas en tiempo real Grandes y complejosLa variedad de funciones aumenta la complejidad incluso en sistemas relativamente pequeos La adaptacin a entornos cambianteslas aplicaciones deben evolucionar continuamentelos STR deben ser extensibles

    Informtica IIIIng. Nora BletPg. *

    Caractersticas de los Sistemas en tiempo real Manipulacin de nmeros realesEjemplo: Se debe tener un modelo matemtico que relacione el calor aplicado y el incremento de temperatura del termonmeros en punto flotante

    Informtica IIIIng. Nora BletPg. *

    Caractersticas de los Sistemas en tiempo real Extremadamente fiables y seguros (dependability)Muchos ejemplos dramticos ilustran que el hardware y el software de los computadores debe ser fiable y seguroEl tamao y complejidad de los STR exacerban el problema de la fiabilidadMecanismos para recuperar fallos (esperados y no esperados)

    Informtica IIIIng. Nora BletPg. *

    Caractersticas de los Sistemas en tiempo real Simultaneidad de acciones (concurrencia)Los dispositivos fsicos controlados funcionan al mismo tiempoLas tareas que los controlan actan concurrentemente

    Informtica IIIIng. Nora BletPg. *

    Caractersticas de los Sistemas en tiempo real Determinismo temporalAcciones en intervalos de tiempo determinadosEs fundamental que el comportamiento temporal de los STR sea determinista o, al menos, previsibleNo confundir con eficienciaEl STR debe responder correctamente en todas las situacionesEn los STR estrictos hay que prever el comportamiento en el peor caso posible

    Informtica IIIIng. Nora BletPg. *

    Caractersticas de los Sistemas en tiempo real Interaccin con el hardwareLos manejadores de dispositivos forman parte del software de aplicacin Implementacin eficientePuesto que los STR son crticos respecto al tiempo, este requisito es ms importante que en otro tipo de sistemas

    Informtica IIIIng. Nora BletPg. *

    Desarrollo de Sistemas en tiempo real

    Informtica IIIIng. Nora BletPg. *

    Desarrollo de Sistemas en tiempo real Los mtodos, herramientas y tecnologas que se usan para construir otros tipos de sistemas no sirven para los STRNo son lo suficientemente fiablesSlo contemplan tiempos de respuesta medio, no el peorNo garantizan los requisitos temporales Las plataformas de desarrollo y ejecucin suelen ser diferentesEs difcil hacer pruebas en la plataforma de ejecucinEs difcil medir los tiempos con precisin

    Informtica IIIIng. Nora BletPg. *

    Desarrollo cruzado

    Informtica IIIIng. Nora BletPg. *

    Aspectos de un sistema FuncionalidadRelacin entre entradas y salidasNo se considera concurrencia, sincronizacin, tiempo real, fiabilidad, seguridad, etc. ArquitecturaComponentes definidos por sus interfaces Concurrencia y tiempo realHebras, sincronizacinPlanificacin y anlisis temporal ImplementacinCdigo de aplicacinPlataforma: RTOS, middleware

    Informtica IIIIng. Nora BletPg. *

    Diseo de Sistemas de tiempo real

    Informtica IIIIng. Nora BletPg. *

    Diseo de Sistemas de tiempo real

    Informtica IIIIng. Nora BletPg. *

    Diseo de Sistemas de tiempo real

    Informtica IIIIng. Nora BletPg. *

    Diseo de Sistemas en tiempo real

    Informtica IIIIng. Nora BletPg. *

    Diseo de Sistemas de tiempo real Las actividades de desarrollo de los STR incluyen las tradicionales de otros sistemas, aunque tienen requerimientos adicionales

    Informtica IIIIng. Nora BletPg. *

    Integracin de mtodos y herramientas

    Informtica IIIIng. Nora BletPg. *

    Integracin de mtodos y herramientas

    Informtica IIIIng. Nora BletPg. *

    Integracin de mtodos y herramientas

    Informtica IIIIng. Nora BletPg. *

    Integracin de mtodos y herramientas

    Informtica IIIIng. Nora BletPg. *

    Lenguajes de programacin Hay varias clases de lenguajes de inters para los STR:AssemblerFlexibles y eficientes pero costosos y poco fiables

    Informtica IIIIng. Nora BletPg. *

    Lenguajes de programacin

    Informtica IIIIng. Nora BletPg. *

    Lenguajes de programacin

    Informtica IIIIng. Nora BletPg. *

    Lenguajes de tiempo real