inf. de expo
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