inf. de expo

37
dit dit UPM Introducción a los sistemas de tiempo real Juan Antonio de la Puente DIT/UPM

Upload: maritza-echeverria

Post on 15-Oct-2015

9 views

Category:

Documents


0 download

TRANSCRIPT

  • ditditUPM

    Introduccin a lossistemas de tiempo real

    Juan Antonio de la PuenteD IT /U P M

  • S istemas de tiempo real - 29/10/98 1997, 1998 Juan Antonio de la P uente 1

    Objetivos! V eremos los conceptos ms importantes re lacionados

    con los sistemas de tiempo rea l! Analizaremos sus requisitos y caractersticas ms

    importantes! E xaminaremos los tipos de sistemas de tiempo real ms

    comunes! V eremos a lgunos de los mtodos y herramientas que se

    utilizan para disear, ana lizar y realizar sistemas detiempo rea l

  • S istemas de tiempo real - 29/10/98 1997, 1998 Juan Antonio de la P uente 2

    U n sistema de tiempo realsistema de tiempo real es un sistema informticoque

    Inte racciona repetidamente con su entorno fsico R esponde a los estmulos que recibe de l m ismo dentro de un

    plazo de tiempo de terminadoPara que el funcionamiento del sistema sea correcto no basta conque las acciones sean correctas, sino que tienen que ejecutarsedentro del intervalo de tiempo especificado

    El tiempo en que se ejecutan las acciones del sistemaes significativo

    Sistema de tiempo real

  • S istemas de tiempo real - 29/10/98 1997, 1998 Juan Antonio de la P uente 3

    Ejemplos de aplicacin! Avinica! C ontrol de tr fico areo! C ontrol de trenes! C ontrol de automviles! Telecomunicaciones! P roduccin y distribucin de energa e lctrica! E lectrnica de consumo! S istemas multimedia

  • S istemas de tiempo real - 29/10/98 1997, 1998 Juan Antonio de la P uente 4

    Ejemplo: control de posicin

    motor sensor

    carga

    referenciacomputador

    amplificador

    medida

  • S istemas de tiempo real - 29/10/98 1997, 1998 Juan Antonio de la P uente 5

    Ejemplo: control de fabricacin

    computador

    mquinasrobots

    transporte

  • S istemas de tiempo real - 29/10/98 1997, 1998 Juan Antonio de la P uente 6

    Ejemplo: control de procesos

    sensor detemperatura

    calefactor

    computador

    consigna

  • S istemas de tiempo real - 29/10/98 1997, 1998 Juan Antonio de la P uente 7

    Entorno de un sistema de tiempo real

    sistema detiempo realoperador

    sistemacontrolado

    interfazde operador

    interfaz de proceso

    entorno

  • S istemas de tiempo real - 29/10/98 1997, 1998 Juan Antonio de la P uente 8

    Sistemas empotrados! M uchos sistemas de tiempo real son componentes de otros sistemas,

    en los que rea lizan funciones de control! E n este caso se dice que se trata de sistemas empotradossistemas empotrados

    (embedded systems)! E jemplos

    automviles e lectrnica de consumo: te l fonos, radios, te levisores e lectrodomsticos perifricos de computador

    ! C aracte rsticas A menudo, e l computador no es visible desde fuera Los recursos son limitados

  • S istemas de tiempo real - 29/10/98 1997, 1998 Juan Antonio de la P uente 9

    Requisitos funcionales (1)! Adquisicin de datos

    M edida de variables cada variable pertenece la esfera de control de un susbsistema fuera de su esfera de control se puede observar, pero no cambiar la imagen de una variable en el S TR tiene un intervalo de validez las medidas pueden estar dirigidas por tiempo o por sucesos

    Acondicionamiento de seales los datos brutos se filtran y convierten a unidades de ingeniera luego se ana lizan para obtener datos validados

    S upervisin cuando algn dato tiene va lores incorrectos se generan alarmas es importante identificar e l suceso original de una serie de a larmas

    encadenadas

  • S istemas de tiempo real - 29/10/98 1997, 1998 Juan Antonio de la P uente 10

    Requisitos funcionales (2)! C ontrol digita l directo

    E l sistema de tiempo real puede actuar sobre e l sistemacontrolado para conseguir que tenga un comportamientodeterminado

    N ormalmente se usa usa un esquema con realimentacin la accion de control es funcin de la desviacin entre los va lores de

    referencia y los valores medidos de las variables e l diseo de los algoritmos de control es un problema importante

    E l comportamiento es muy regular (muestreo peridico)

  • S istemas de tiempo real - 29/10/98 1997, 1998 Juan Antonio de la P uente 11

    Requisitos funcionales (3)! Interaccin con personas

    La interfaz de operador es muy importante una mala interfaz puede causar accidentes

    Aspectos tpicos: presentacin de datos presentacin de a larmas presentacin de tendencias registro de datos generacin de informes

  • S istemas de tiempo real - 29/10/98 1997, 1998 Juan Antonio de la P uente 12

    Requisitos temporales

    activacin

    tiempo de respuesta

    plazo de ejecucin

    intervalo de ejecucin

    arranque terminacin

    ejecucin de la actividad

    Las acciones de los sistemas de tiempo real se e jecutanrepe tidamente , dentro de interva los de tiempo dete rminados

    lmite

  • S istemas de tiempo real - 29/10/98 1997, 1998 Juan Antonio de la P uente 13

    Origen de los requisitos temporales! Los ms crticos aparecen en los bucles de control

    E jemplo:

    temperatura

    tiempo

    100%90%

    10%

    potencia de calefaccin

    0%

    !O !R

  • S istemas de tiempo real - 29/10/98 1997, 1998 Juan Antonio de la P uente 14

    ! E l computador muestrea peridicamente la variable controlada, lacompara con e l valor de referencia, y ca lcula e l va lor de la variablede control mediante un algoritmo de control

    ! E l computador tarda un cie rto tiempo de respuesta R en calcular laaccin de control:

    ! J es la variacin (jitter) en e l tiempo de respuesta , J = RMAX RMIN

    Control por computador

    actuacin t

    R

    medida

    T

    medida

    J

  • S istemas de tiempo real - 29/10/98 1997, 1998 Juan Antonio de la P uente 15

    U n perodo de muestreo excesivo puede fa lsear la imagen de lasvariables del sistema controlado

    D es un plazo de respuesta menor o igual que e l perodo U na variacin significativa en R puede comprometer e l correcto

    funcionamiento de l a lgoritmo de control

    Relacin entre los parmetros temporales

    P erodo T < D R / 10T iempo de respuesta R < D " TV ariacin (jitter) J

  • S istemas de tiempo real - 29/10/98 1997, 1998 Juan Antonio de la P uente 16

    Requisitos de fiabilidad y seguridad (1)! F iabilidad

    P robabilidad de proporcionar e l servicio especificado P ara una tasa de fa llos constante de # averas/hora se tiene

    T iempo medio entre averas: Los sistemas con M T T F > 109 se denominan sistemas ultrafiables

    ! S eguridad T ipos de averas: malignas y benignas

    U na avera maligna tiene un coste muy superior a la utilidad de lsistema

    S istemas crticos D eben ser ultrafiables respecto a las averas malignas E n muchos casos se exige una certificacin de seguridad e fectuada

    por un organismo independiente

    ( ) ( )0ttetR $#$=#= 1M TTF

  • S istemas de tiempo real - 29/10/98 1997, 1998 Juan Antonio de la P uente 17

    Requisitos de fiabilidad y seguridad (2)! M antenibilidad

    M edida del tiempo necesario para reparar una avera benigna P ara una tasa de reparacin de reparaciones / hora :

    T iempo medio de reparacin: M TT R = 1 / C onflicto: los e lementos fciles de mantener son menos fiables

    ! D isponibilidad Fraccin de tiempo durante e l cua l e l sistema est disponible

    ( ) ( )fttetM $#$=

    MTBFMTTF

    MTTRMMTFMTTFA

    =

    +=

    avera avera

    t

    MTTFMTTR

    MTBF

    reparacin

  • S istemas de tiempo real - 29/10/98 1997, 1998 Juan Antonio de la P uente 18

    Clases de sistemas de tiempo real! S egn las propiedades del sistema controlado

    sistemas crticos y sistemas acrticos sistemas con parada segura y sistemas con degradacin

    aceptable

    ! S egn las propiedades del sistema de tiempo rea l sistemas con tiempo de respuesta garantizado y sistemas que

    hacen lo que pueden sistemas con recursos adecuados y sistemas con recursos

    inadecuados sistemas dirigidos por tiempo y sistemas dirigidos por eventos

  • S istemas de tiempo real - 29/10/98 1997, 1998 Juan Antonio de la P uente 19

    Sistemas de tiempo realcrticos y acrticos

    Sistemas crticos(hard real-time systems)

    ! P lazo de respuesta estricto! C omportamiento tempora l

    determinado por el entorno! C omportamiento en sobrecargas

    predecible! R equisitos de seguridad crticos! R edundancia activa! V olumen de datos reducido

    Sistemas acrticos(soft real-time systems)

    ! P lazo de respuesta flexible! C omportamiento tempora l

    determinado por el computador! C omportamiento en sobrecargas

    degradado! R equisitos de seguridad acrticos! R ecuperacin de fa llos! G ran volumen de datos

    Se distinguen por sus requisitos temporales y de fiabilidad

  • S istemas de tiempo real - 29/10/98 1997, 1998 Juan Antonio de la P uente 20

    Sistemas con parada segura ysistemas con degradacin aceptable

    Sistemas con parada segura(fail-safe)

    ! D etencin en estado seguro! P robabilidad de detecin de fallos

    e levada

    Sistemas con degradacinaceptable (fail-soft)

    ! F uncionamiento con prdidaparcia l de funciona lidad oprestaciones

    ! T ambin hay sistemas contolerancia de fallos completa(fail operational)

    Se distinguen por su comportamiento en caso de avera

  • S istemas de tiempo real - 29/10/98 1997, 1998 Juan Antonio de la P uente 21

    Sistemas con respuesta garantizada ysistemas que hacen lo que pueden

    Sistemas con respuestagarantizada (guaranteedresponse systems)

    ! C omportamiento tempora lgarantizado analticamente

    ! H ace falta caracterizar conprecisin la carga mxima y losposibles fa llos

    Sistemas que hacen lo quepueden (best-effort systems)

    ! C omportamiento tempora l de tipolo mejor que se pueda

    ! N o se hace una caracterizacinprecisa de carga y fa llos

    ! S lo sirve para sistemas acrticos

    Se distinguen por su grado de determinismo temporal

  • S istemas de tiempo real - 29/10/98 1997, 1998 Juan Antonio de la P uente 22

    Sistemas con recursos adecuados einadecuados

    Sistemas con recursosadecuados (resource-adequate systems)

    ! D iseo con suficientes recursospara garantizar e l comportamientotempora l con mxima carga y encaso de fa llos

    Sistemas con recursosinadecuados (resource-inadequate systems)

    ! D iseo con recursos razonablesdesde un punto de vistaeconmico

    ! S lo sirve para sistemas acrticos

    Se distinguen por la cantidad de recursos disponibles

  • S istemas de tiempo real - 29/10/98 1997, 1998 Juan Antonio de la P uente 23

    Sistemas dirigidos por tiempoy por sucesos

    Sistemas dirigidos porsucesos(event-triggered systems)

    ! Arranque cuando se produce unsuceso de cambio de estado

    ! M ecanismo bsico: interrupciones

    Sistemas dirigidos portiempo(time-triggered systems)

    ! Arranque en instantes de tiem popredeterminados

    ! M ecanismo bsico: re loj

    Se distinguen por la forma de arrancar la ejecucin desus actividades

  • S istemas de tiempo real - 29/10/98 1997, 1998 Juan Antonio de la P uente 24

    Resumen de caractersticas de lossistemas de tiempo real crticos! G ran tamao y comple jidad! S imultaneidad de acciones (concurrencia )! S eguridad y fiabilidad! D eterminismo temporal! D ispositivos de entrada y salida especia les

  • S istemas de tiempo real - 29/10/98 1997, 1998 Juan Antonio de la P uente 25

    Desarrollo de software para sistemas detiempo real crticos! Las caractersticas especficas de los sistemas de tiempo

    rea l crticos condicionan los mtodos y herramientas quese utilizan para desarrolla r e l software

    ! N o todas las tcnicas que se usan para construir otrostipos de sistemas sirven para e l software de tiempo rea lcrtico

    suele haber problemas de fiabilidad y de terminismo temporal

    ! N os centraremos en los lenguajes de programacin ysistemas operativos

  • S istemas de tiempo real - 1997, 1998 Juan Antonio de la P uente 26

    Lenguajes de programacin! U n lenguaje de programacin de sistemas de tiempo rea l

    debe facilitar la rea lizacin de sistemas concurrentes, fiables, con un comportamiento tempora l ana lizable .

    ! H ay tres clases de lenguajes de inters para S TR : Lenguajes ensambladores

    F lexibles y e ficientes, pero costosos y poco fiables Lenguajes secuenciales (Fortran, P ascal, C , ...)

    N ecesitan un S O para concurrencia y tiempo rea l Lenguajes concurrentes (M odula , Ada , ...)

    C oncurrencia y tiempo rea l incluidos en e l lenguaje

  • S istemas de tiempo real - 1997, 1998 Juan Antonio de la P uente 27

    C! E s un lenguaje muy utilizado para programacin de sistemas! E s un lenguaje

    estructurado, con bloques sin tipado fuerte muy flexible (pero a veces poco seguro)

    ! N o tiene integrada la concurrencia ni e l tiempo rea l se consigue invocando servicios de l sistema operativo de forma explcita

    ! N o facilita la descomposicin en mdulos ni la programacin conobje tos

    se puede hacer con C++(una extensin de C para programar con objetos)

  • S istemas de tiempo real - 1997, 1998 Juan Antonio de la P uente 28

    Ada! E s un lenguaje diseado especficamente para sistemas de tiempo

    real empotrados concurrencia tiempo rea l acceso a l hardware e interrupciones

    ! E s un lenguaje imperativo, descendiente de P asca l estructura en bloques fuertemente tipado

    ! E st pensado para construir sistemas grandes y cambiantes paquetes (mdulos) y esquemas genricos extensin de tipos con herencia biblioteca jerrquica interfaces normalizadas con otros lenguajes (C , Fortran)

  • S istemas de tiempo real - 1997, 1998 Juan Antonio de la P uente 29

    Ada 95! E s la versin actua l normalizada de Ada! La norma define

    un ncleo comn para todas las implementaciones unos anexos especia lizados para

    programacin de sistemas sistemas de tiempo real sistemas distribuidos sistemas de informacin clculo numrico fiabilidad y seguridad

    Los anexos definen paquetes de biblioteca mecanismos de implementacin

    no aaden sintaxis ni vocabulario al lengua je

  • S istemas de tiempo real - 1997, 1998 Juan Antonio de la P uente 30

    Sistemas operativos! Los sistemas operativos convencionales no son

    adecuados para rea lizar sistemas de tiempo real no tienen un comportamiento de terminista no permiten garantizar los tiempos de respuesta

    ! U n sistema operativo de tiempo rea l debe soportar concurrencia: procesos ligeros (threads) con memoria comn temporizacin: medida de tiempos y e jecucin peridica planificacin: prioridades fijas con desalojo, acceso a recursos

    con protocolos de herencia de prioridad dispositivos de E/S: acceso a recursos de hardware e

    interrupciones

  • S istemas de tiempo real - 1997, 1998 Juan Antonio de la P uente 31

    POSIX! E s un conjunto de normas IEE E /ISO que definen

    interfaces de sistemas operativos! P ermiten desarrolla r software port til y reutilizable

    (Portable Operating System Interface) + X! Las normas definen servicios que se pueden incluir o no

    en un sistema operativo particular! Adems se definen perfiles de aplicacin con conjuntos

    de servicios estndar! H ay interfaces para C , Ada, y otros lenguajes

  • S istemas de tiempo real - 1997, 1998 Juan Antonio de la P uente 32

    Normas POSIXP O S IX 1 , 1a Interfaz bsica similar a U N IX POSIX 1b,1d,1i,1j Extensiones de tiempo realPOSIX 1c Procesos ligeros (threads)P O S IX 1e S eguridadP O S IX 1 f N FSP O S IX 1g S ervicios de red (sockets, XT I)P O S IX 1h Tolerancia de fa llosP O S IX 21 C omunicaciones de tiempo rea lPOSIX 5,5a,5b Interfaces para Ada

  • S istemas de tiempo real - 1997, 1998 Juan Antonio de la P uente 33

    Perfiles de aplicacin! D efinen subconjuntos de servicios para distintos tipos de

    aplicacionesPOSIX 13 : Perfiles para sistemas de tiempo real

    P S E 50 : sistema de tiempo real mnimo sin gestin de memoria , ficheros ni te rmina l slo threads (no procesos pesados)

    P S E 51 : controlador de tiempo real tiene sistema de ficheros y terminal

    P S E 52 : sistema de tiempo real dedicado tiene gestin de memoria y procesos pesados

    P S E 53 : sistema de tiempo real generalizado sistema completo con todo tipo de servicios

  • S istemas de tiempo real - 29/10/98 1997, 1998 Juan Antonio de la P uente 34

    Resumen (1)! Los sistemas de tiempo rea l inte raccionan con su entorno y e jecutan

    sus acciones dentro de intervalos de tiempo determinados! T ienen requisitos funciona les, tempora les y de fiabilidad muy

    exigentes! H ay varias clases de sistemas de tiempo real:

    crticos y acrticos con parada segura , degradacin aceptable y tolerancia de fa llos

    comple ta con respuesta garantizada y que hacen lo que pueden con recursos adecuados e inadecuados dirigidos por eventos y por tiempo

  • S istemas de tiempo real - 29/10/98 1997, 1998 Juan Antonio de la P uente 35

    Resumen (2)! Las caractersticas principa les de los sistemas de tiempo real son:

    gran tamao y comple jidad concurrencia dispositivos de entrada y sa lida especia les seguridad y fiabilidad determinismo tempora l

    ! P ara desarrollar software para sistemas de tiempo real crticos esnecesario utilizar mtodos y herramientas especia les

    lengua jes de programacin: C , Ada sistemas operativos: normas P O S IX para tiempo rea l