Documentos de Académico
Documentos de Profesional
Documentos de Cultura
UPM
Introducción a los
sistemas de tiempo real
Juan Antonio de la Puente
DIT/UPM
Transparencias basadas en el capítulo 1 del libro de A. Burns y A. Wellings RealTime Systems and Programming Languuages, 3ª edición (2001)
Objetivos
◆ Veremos los conceptos más importantes relacionados con
los sistemas de tiempo real
© Juan Antonio de la Puente 20052006
◆ Analizaremos sus requisitos y características más
importantes
◆ Examinaremos los tipos de sistemas de tiempo real más
comunes
20/02/07 Introducción a los sistemas de tiempo real 2
Sistemas empotrados
◆ Muchos sistemas de uso común en la industria, el
transporte, las comunicaciones y el hogar tienen
computadores empotrados:
– aviones
© Juan Antonio de la Puente 20052006
– trenes
– coches
– teléfonos móviles
– televisores
– etc.
Los computadores empotrados realizan
funciones de control de sistemas físicos
20/02/07 Introducción a los sistemas de tiempo real 3
Características
◆ Los recursos están limitados
– procesador, memoria, pantalla, etc.
◆ Los dispositivos de entrada y salida son especiales
para cada sistema
© Juan Antonio de la Puente 20052006
– no hay teclado ni pantalla normales
◆ El computador debe reaccionar a tiempo ante los
cambios en el sistema físico
– 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 empotrados
tiene requisitos especiales
20/02/07 Introducción a los sistemas de tiempo real 4
Sistemas de tiempo real
Un sistema de tiempo real es un sistema informático que
– Interacciona repetidamente con su entorno físico
– Responde a los estímulos que recibe del mismo dentro de un plazo
© Juan Antonio de la Puente 20052006
de tiempo determinado
Para que el funcionamiento del sistema sea correcto no basta con
que las acciones sean correctas, sino que tienen que ejecutarse
dentro del intervalo de tiempo especificado
El tiempo en que se ejecutan las acciones del sistema
es significativo
20/02/07 Introducción a los sistemas de tiempo real 5
Ejemplo: freno con computador
(brakebywire)
© Juan Antonio de la Puente 20052006
actuador
pedal
de freno
Computador
sensor de
velocidad
sensor de
guiñada
20/02/07 Introducción a los sistemas de tiempo real 6
mpeg2 mpeg2
sharp sharpSD SD
dec. dec.
enhan. enhan.
Ejemplo: sistema de vigilancia
main: scalablemain: scalable
QCIF QCIF
Analog stream Analog stream
scaler scaler
scaler scaler
enc.
enc. enc.
enc.
UI : non scalable
UI : non scalable
HD
Video Server disk : non scalable NET
disk : non scalable
application
Web User
Interface
Linux
Embedded PC
Video Surveillance Device
20/02/07 Introducción a los sistemas de tiempo real 7
Ejemplo: terminal de audio/video
main: scalable
audi audio
o rend.
DVD tuner demux dec.
sharp
© Juan Antonio de la Puente 20052006
dec enh.
scaler mixer
digit.
Hw enc.
scaler encod. writer
Disk: nonscalable
20/02/07 Introducción a los sistemas de tiempo real 8
Ejemplo: control de posición
motor sensor
amplificador carga
© Juan Antonio de la Puente 20052006
medida
computador
referencia
20/02/07 Introducción a los sistemas de tiempo real 9
Ejemplo: control de fabricación
robots
máquinas
© Juan Antonio de la Puente 20052006
transporte
computador
20/02/07 Introducción a los sistemas de tiempo real 10
Ejemplo: control de procesos
consigna
© Juan Antonio de la Puente 20052006
sensor de
temperatura
computador
calefactor
20/02/07 Introducción a los sistemas de tiempo real 11
Tareas de tiempo real
◆ Las actividades de un sistema de tiempo real se llaman
tareas
© Juan Antonio de la Puente 20052006
◆ Tienen varios 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
20/02/07 Introducción a los sistemas de tiempo real 12
Ejecución de una tarea de tiempo real
activación límite
plazo de ejecución
© Juan Antonio de la Puente 20052006
arranque terminación
ejecución de la tarea
tiempo de respuesta
20/02/07 Introducción a los sistemas de tiempo real 13
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
© Juan Antonio de la Puente 20052006
» estocástica, a rachas, irregular
Plazo de respuesta
– absoluto: tiempo límite para terminar
– relativo: intervalo desde la activación
Se trata de garantizar que todas las veces que se ejecuta una
tarea termina dentro de plazo
20/02/07 Introducción a los sistemas de tiempo real 14
Tipos de requisitos temporales
◆ Tiempo real estricto (hard realtime)
– todas las acciones deben ocurrir dentro del plazo especificado
» ejemplo: control de frenado
◆ Tiempo real flexible (soft realtime)
© Juan Antonio de la Puente 20052006
– 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 realtime)
– se pueden perder plazos ocasionalmente
– una respuesta tardía no tiene valor
» ejemplo: sistemas multimedia
En un mismo sistema puede haber tareas con distintos
tipos de requisitos temporales
20/02/07 Introducción a los sistemas de tiempo real 15
Características de los STR (1)
◆ Gran tamaño y complejidad
– algunos STR tienen millones de líneas de código
– la variedad de funciones aumenta la complejidad incluso en
sistemas relativamente pequeños
© Juan Antonio de la Puente 20052006
◆ Simultaneidad de acciones (concurrencia)
– los dispositivos físicos controlados funcionan al mismo tiempo
– las tareas que los controlan actúan concurrentemente
◆ Dispositivos de entrada y salida especiales
– los manejadores de dispositivos forman parte del software de
aplicación
20/02/07 Introducción a los sistemas de tiempo real 16
Características de los STR (2)
◆ Seguridad y fiabilidad
– sistemas críticos: fallos con consecuencias graves
» pérdida de vidas humanas
» pérdidas económicas
© Juan Antonio de la Puente 20052006
» daños medioambientales
◆ Determinismo temporal
– acciones en intervalos de tiempo determinados
– es fundamental que el comportamiento temporal de los STR sea
determinista o, al menos, previsible
» no hay que confundirlo con la necesidad de que sea eficiente
» el sistema debe responder correctamente en todas las situaciones
» en los sistemas de tiempo real estricto hay que prever el
comportamiento en el peor caso posible
20/02/07 Introducción a los sistemas de tiempo real 17
Estructura de un STR típico
Reloj de Sistema
Control digital Interfaz
tiempo real controlado
© Juan Antonio de la Puente 20052006
Registro de
Sistema remoto
datos
de supervisión
Base de datos
Visualizació
n Pantallas
de datos
Consola de Interfaz de
operador operador Computador de tiempo real
20/02/07 Introducción a los sistemas de tiempo real 18
Resumen
◆ Los sistemas de tiempo real interaccionan con su entorno
y ejecutan sus acciones dentro de intervalos de tiempo
determinados
Tienen requisitos muy exigentes
© Juan Antonio de la Puente 20052006
◆
– tamaño y complejidad
– concurrencia
– interfaces de hardware específicas
– fiabilidad y seguridad
– determinismo temporal
◆ Hay dos clases principales de requisitos de tiempo real
– tiempo real estricto (hard realtime)
– tiempo real flexible (soft realtime)
20/02/07 Introducción a los sistemas de tiempo real 19