04 - Sistemas en Tiempo Real

download 04 - Sistemas en Tiempo Real

of 15

description

RTOS sistemas en tiempo real. Breve descripción y cómo funcionan.

Transcript of 04 - Sistemas en Tiempo Real

  • Rafael Perlez

    *Varias notas y diapositivas fueron tomadas de la clase de Sistemas Operativos en Tiempo Real de Luis Garabito.

  • Qu es un sistema en tiempo Real? Los sistemas en tiempo real son sistemas

    computacionales que deben reaccionar a eventos del ambiente dentro de restricciones precisas de tiempo.

    Se dice que un sistema es de Tiempo Real si la precisin total de una operacin depende NO solo de su precisin, tambin del tiempo en que se realice.

    Los sistemas de tiempo Real, as como su deadline, se clasifican por la consecuencia de fallar en cumplir este deadline.

    El dar una respuesta fuera del tiempo puede ser completamente intil o hasta peligroso.

  • Qu es un sistema en tiempo Real? La principal tarea de un sistema en Tiempo Real es

    producir resultados correctos cumpliendo los deadlines predefinidos al cumplirlos.

    Ejemplos de Sistemas en Tiempo Real: Control de una planta nuclear o una planta qumica.

    Control de un proceso de produccin.

    Sistemas de control de las vas de un tren.

    Aplicaciones automotrices.

    Sistemas de control de vuelo.

    Adquisicin y monitoreo del ambiente.

    Telecomunicacin

  • La Ley de Murphy para Sistemas en Tiempo Real Ley de Murhpy

    Si algo puede salir mal, saldr mal.

    Constante de Murphy El dao a un objeto es directamente proporcional a su valor.

    Ley de Naeser Uno puede hacer las cosas a prueba de bombas, no a prueba de maleficios.

    Postulados de Troutman1. Cualquier defecto del software tiende a maximizar el dao.2. El peor defecto del software ocurrir seis meses despus de terminar las pruebas de campo.

    Ley de Green Si un sistema est diseado para soportar una serie de fallas, siempre existir un idiota con tanta

    habilidad que podr causar una falla no tolerada.

    Corolario Los tontos son siempre mas hbiles que las medidas tomadas para alejarlos de hacerse dao.

    Primera Ley de Johnson Si un sistema deja de funcionar, lo har en el peor momento posible.

    Segunda Ley de Sodd Tarde o temprano, la peor combinacin de circunstancias posibles ocurrir

    CorolarioUn sistema debe ser siempre diseado para soportar la peor combinacin de circunstancias.

  • Sistemas en tiempo real A nivel proceso, la

    principal diferencia es que una tarea en tiempo real se caracteriza por tener un deadline.

    En sistemas en tiempo real producir un resultado sin cumplir este deadline no solo es hacerlo tarde, es hacerlo mal!

    Sistema de Control

    Sensores Actuadores

    Ambiente

  • Sistemas en tiempo real Un sistema en tiempo real se considera

    como Hard Real Time si el fallar su deadline puede causar consecuencias catastrficas para el ambiente que est controlando.

    Un sistema en tiempo real se considera como Soft Real Time si cumplir su deadline es deseable por cuestiones de desempeo, pero fallar su deadline no causa serios daos al ambiente y no pone en peligro el comportamiento correcto del sistema.

    Lo que diferencia a un sistema HardReal Time de un Soft Real Time es el grado de tolerancia de fallar sus deadlines, la utilidad de los resultados computados al fallar el deadline y la penalizacin por fallar el mismo.

    Sistema de Control

    Sensores Actuadores

    Ambiente

  • Sistemas en tiempo Real

    Caractersticas

    Tiempo de Respuesta

    Desempeo ante la mxima carga de trabajo.

    Control de cambio.

    Seguridad.

    Tamao de los datos.

    Redundancia

    Hard Real Time

    Determinstico.

    Responde de manerapredecible todo el tiempo.

    Responde a los estmulos del ambiente.

    Crtica.

    Pequeos a medianos.

    Activa

    Soft Real Time

    No determinstico.

    Se degrada su respuestacon la carga.

    Prioriza los procesos de la computadora.

    No es crtica.

    Archivos Grandes.

    Se recupera desde el ltimo punto de funcionamiento.

  • Tiempo de Respuesta Un sistema Hard Real time debe ser altamente

    independiente para mantener la operacin segura del proceso.

    Un sistema Soft Real Time puede fallar su deadline y no hay resultados catastrficos.

  • Desempeo ante la carga En un sistema Hard Real Time, el escenario de mxima

    carga de trabajos debe de estar bien definido.

    Se debe garantizar mediante el Diseo que el sistema cumplir sus deadlines en todo momento, ya que muchas aplicaciones de tiempo real dependen de la predictibilidad del desempeo durante escenarios raros que llevan una carga mxima.

    En sistemas Soft Real Time el promedio es importante y la degradacin del desempeo en picos de trabajo es tolerada (principalmente por razones econmicas).

  • Control de cambio Un sistema Hard Real Time responde a los cambios

    que ocurren en el ambiente.

    Este sistema debe de mantenerse respondiendo a los cambios del ambiente en toda circunstancia.

  • Seguridad La deteccin de errores y su correccin debe ser

    autnoma en sistemas Hard Real Time.

    El sistema deber ser capaz de tomar acciones para recuperarse despus de los errores y llegar a un estado seguro dentro de intervalos de tiempo que son definidos por la aplicacin sin intervencin de una persona.

  • Tamao de los datos La base de datos de un sistema Hard Real Time se

    compone de datos temporales de cada entidad a controlar.

    Generalmente la cantidad de datos es pequea, ya que estos sistemas estn orientados a la respuesta en corto plazo.

    En contraste, un sistema Soft Real Time, mantener la integridad y disponibilidad de muchos datos es clave, por lo que guardan una gran cantidad de datos.

  • Redundancia Si un error se ha detectado en un sistema, el mismo

    regresa a un punto anterior para iniciar acciones de recuperacin.

    En un sistema de tiempo real la redundancia en un proceso de tiempo real es difcil de encontrar debido a: Es difcil garantizar el cumplir el deadline despus de un

    error, ya que el proceso de recuperacin tomar una cantidad de tiempo determinada por el tipo de falla.

    Una accin que se haya tomado para modificar el ambiente ser difcil de deshacer.

    La validez del punto de retorno puede desaparecer por los cambios ocurriendo en ese momento.

  • Confiabilidad de un sistema RT Los sistemas Embedded deben ser confiables.

    Dependiendo de la aplicacin, estos pueden necesitar operar largos perodos de tiempo sin intervencin de una persona.

    Dependiendo la aplicacin es el nivel de confiabilidad que requiere el sistema.

    Un sistema confiable es aquel que est disponible (continua dando un servicio) y no falla.

    Una forma de categorizar la confiabilidad de un sistema es cuantificando el tiempo que el sistema debe estar disponible

  • Confiabilidad de un sistema RT

    La combinacin de todos los elementos del sistema, incluyendo el hardware, el software y la aplicacin determinan la confiabilidad de un sistema.