1.094 visualizaciones desde el 14 de Enero del 2017
162,7 KB
4 paginas
Creado hace 20a (01/03/2006)
Instrumentación de Tiempo Real
UNIVERSIDAD DE CANTABRIA
Tema 1. Introducción
Tema 2. Recursos de acceso al hardware
Tema 3. Interrupciones
Tema 4. Puertas básicas de entrada/salida (I)
Tema 5. Recursos de temporización de bajo nivel
Tema 6. Multitarea en Ada
Tema 7. Puertas básicas de entrada/salida (II)
GRUPO DE COMPUTADORES Y TIEMPO REAL
DPTO. DE ELECTRÓNICA Y COMPUTADORES
Un sistema de tiempo es una combinación de computador,
dispositivos de E/S y software de propósito especial en la
que:
• existe una fuerte interacción con el entorno
• el entorno cambia con el tiempo
• el sistema debe controlar y/o reaccionar frente a diferentes
aspectos del entorno
Como consecuencia:
• se imponen requerimientos temporales al software
• el software es de naturaleza concurrente
GRUPO DE COMPUTADORES Y TIEMPO REAL
DPTO. DE ELECTRÓNICA Y COMPUTADORES
“En aplicaciones de tiempo real, la validez de una
computación depende, no sólo del resultado obtenido, sino
también del instante en el que se obtiene”
Ejemplo de
sistema de tiempo real
mide la
temperatura
actúa sobre la
válvula de refrigeración
Requerimiento temporal:
la medida de la temperatura y el control de la
válvula debe realizarse con una periodicidad
máxima de 10 mseg
GRUPO DE COMPUTADORES Y TIEMPO REAL
DPTO. DE ELECTRÓNICA Y COMPUTADORES
Necesidad de concurrencia en
sistemas de tiempo real
UNIVERSIDAD DE CANTABRIA
Lo habitual es que un sistema de tiempo real tenga que
realizar varias actividades de forma concurrente
Por ejemplo: tareas en el controlador de un coche:
• medir la velocidad cada 200 ms
• controlar la inyección cada 40 ms
• control del ABS cada 80 ms
Para el programador resulta más sencillo trabajar sobre cada
una de las tareas de forma independiente
• el sistema operativo o el lenguaje de programación
proporcionará el soporte para que las tareas se ejecuten de
forma concurrente
GRUPO DE COMPUTADORES Y TIEMPO REAL
DPTO. DE ELECTRÓNICA Y COMPUTADORES
Programación en lenguaje ensamblador
• acceso directo a los recursos de temporización de bajo
nivel (temporizadores, relojes, etc)
• dificil implementar la concurrencia
• apropiado para aplicaciones sencillas
• apropiado para microcontroladores pequeños (y baratos)
Programación con un lenguaje de alto nivel
• acceso directo a recursos de temporización de bajo nivel
• dificil implementar la concurrencia
• apropiado para aplicaciones de complejidad media
• apropiado para microcontroladores de tamaño medio
GRUPO DE COMPUTADORES Y TIEMPO REAL
DPTO. DE ELECTRÓNICA Y COMPUTADORES
Programación con un lenguaje de alto nivel que soporta la
concurrencia (Ada) (o con C y un sistema operativo POSIX)
• el acceso a los recursos de temporización de bajo nivel se
hace de forma transparente para el programador
• fácil implementar la concurrencia
• apropiado para aplicaciones de complejidad media o alta
• apropiado para controladores relativamente potentes
Ensamblador
eficiencia
Lenguaje
de alto nivel
Lenguaje de alto
nivel concurrente
GRUPO DE COMPUTADORES Y TIEMPO REAL
DPTO. DE ELECTRÓNICA Y COMPUTADORES
Comentarios de: Instrumentación de Tiempo Real - Tema 1. Introducción (0)
No hay comentarios