UPV - EHU
MOISE
Konputagailuen Arkitektura eta Teknologia SailaDepartamento de Arquitectura y Tecnología de Computadores 1
Introducción al tiempo real en sistemas
empotrados
Departamento de Arquitectura y Tecnología de Computadores
Universidad del País Vasco / Euskal Herriko Unibertsitatea
Master en Ingeniería de Sistemas Empotrados
Parte I: Fundamentos
UPV - EHU
MOISE
Konputagailuen Arkitektura eta Teknologia SailaDepartamento de Arquitectura y Tecnología de Computadores 2
Contenido
• Introducción• Soporte de interrupciones• Conceptos de sistemas operativos• Planificación en sistemas de tiempo real• Mecanismos de sincronización y comunicación• Planificación de tiempo real con recursos
compartidos
UPV - EHU
MOISE
Konputagailuen Arkitektura eta Teknologia SailaDepartamento de Arquitectura y Tecnología de Computadores 3
Bibliografía general
SOBRE SISTEMAS OPERATIVOS• A. Lafuente: Sistemas Operativos II. Apuntes de la asignatura. Edición 2009-10.
http://www.sc.ehu.es/acwlaroa/SO2.htm • M.J. Rochkind: Advanced Unix Programming (2nd Edition), Addison-Wesley, 2004.• C. Rodríguez, I. Alegría, J. G. Abascal, A. Lafuente: Descripción funcional de los sistemas
operativos. Síntesis S.A. Madrid, 1994• S. Sánchez Prieto: Sistemas Operativos. Universidad de Alcalá de Henares, Servicio
Editorial, 2005.• A. Silberschatz, P. Galvin, G. Gagne: Conceptos de Sistemas Operativos (7a edición). Willey,
2006.• A.S. Tanenbaum: Modern Operating Systems (3rd edition). Prentice-Hall, 2008.
SOBRE TIEMPO REAL
• G.C. Buttazzo: Hard Real-Time Computing Systems: Predictable Scheduling Algorithms and Applications (3rd edition), Springer 2011.
• Q. Li: Real-Time concepts for embedded systems. CMP Books, 2003.• J. Liu: Real-Time Systems, Prentice-Hall, 2000.• H. Kopetz: Real-Time Systems: design principles for distributed embedded applications.
Kluwer, 1997.
UPV - EHU
MOISE
Konputagailuen Arkitektura eta Teknologia SailaDepartamento de Arquitectura y Tecnología de Computadores 4
Contenido
• Introducción• Soporte de interrupciones• Conceptos de sistemas operativos• Planificación en sistemas de tiempo real• Mecanismos de sincronización y comunicación• Planificación de tiempo real con recursos
compartidos
UPV - EHU
MOISE
Konputagailuen Arkitektura eta Teknologia SailaDepartamento de Arquitectura y Tecnología de Computadores 5
IntroducciónContenido
• Sistemas de propósito general• Sistemas empotrados• Sistemas de tiempo real
UPV - EHU
MOISE
Konputagailuen Arkitektura eta Teknologia SailaDepartamento de Arquitectura y Tecnología de Computadores 6
Sistemas de propósito general
Aplicaciones
SO
Hw
UPV - EHU
MOISE
Konputagailuen Arkitektura eta Teknologia SailaDepartamento de Arquitectura y Tecnología de Computadores 7
Sistemas de propósito general
• En general, no hay restricciones de hardware.
• Componente Hw estándar: PC• SO de propósito general• Objetivo: soportar cualquier tipo de
aplicación
UPV - EHU
MOISE
Konputagailuen Arkitektura eta Teknologia SailaDepartamento de Arquitectura y Tecnología de Computadores 8
Sistemas empotrados
• Conjunto hardware/software • integrado dentro de un sistema más
complejo, • al que controla, • que usualmente funciona sin intervención
humana
UPV - EHU
MOISE
Konputagailuen Arkitektura eta Teknologia SailaDepartamento de Arquitectura y Tecnología de Computadores 9
Sistemas empotrados
Sistemasensor
Sistemasensor
SistemaactuadorSistemaactuador
Sistema de controlSistema
de control
Sistema controlad
o
Sistema controlad
o
UPV - EHU
MOISE
Konputagailuen Arkitektura eta Teknologia SailaDepartamento de Arquitectura y Tecnología de Computadores 10
Sistemas empotradosEjemplo
(Extraído del curso de J.A. de la Puente, UPM)
UPV - EHU
MOISE
Konputagailuen Arkitektura eta Teknologia SailaDepartamento de Arquitectura y Tecnología de Computadores 11
Sistemas empotradosCaracterísticas
• Restricción de recursos disponibles– Potencia de cálculo– Capacidad de almacenamiento– Consumo…
• Dependencia e interacción con el entorno – mediante sensores– muy diversos
• Aplicaciones muy variadas • Habitualmente requieren respuesta en
tiempo real
UPV - EHU
MOISE
Konputagailuen Arkitektura eta Teknologia SailaDepartamento de Arquitectura y Tecnología de Computadores 12
Sistemas de tiempo real
• Las tareas tienen un plazo para realizarse.• Para que la tarea se ejecute correctamente:
– El resultado debe ser correcto– El resultado debe producirse en dicho plazo
UPV - EHU
MOISE
Konputagailuen Arkitektura eta Teknologia SailaDepartamento de Arquitectura y Tecnología de Computadores 13
Tipos de sistemas de tiempo realsegún el plazo
(Extraído del curso de J.A. de la Puente, UPM)
UPV - EHU
MOISE
Konputagailuen Arkitektura eta Teknologia SailaDepartamento de Arquitectura y Tecnología de Computadores 14
Sistemas de tiempo realEjemplo de sistema de tiempo real con tiempo de respuesta crítico (I)
• Un coche, controlado mediante un microprocesador, viaja a una velocidad de 90 km/h (25 m/s).
• Un sensor reconoce un obstáculo a 75 m de distancia.• A esa velocidad el coche necesita 25 m para
detenerse completamente.• El sistema dispone, para reaccionar, de:
ssm
m
v
et 2
/25
50
UPV - EHU
MOISE
Konputagailuen Arkitektura eta Teknologia SailaDepartamento de Arquitectura y Tecnología de Computadores 15
Sistemas de tiempo realEjemplo de sistema de tiempo real con tiempo de respuesta crítico (II)
• Supongamos que la tarea que se encarga del frenado se ejecuta en 0,1 s.
• Supongamos que además el sistema de control está recibiendo órdenes para:– Subir una ventanilla: 4 s– Mantener la temperatura a 22 ºC: 0,1 s– Girar el volante: 0,1 s– etc.
• Según cómo se planifiquen esas tareas, puede que no le dé tiempo a frenar.
• No es un problema sólo de rendimiento del procesador, sino principalmente de planificación de las tareas.
UPV - EHU
MOISE
Konputagailuen Arkitektura eta Teknologia SailaDepartamento de Arquitectura y Tecnología de Computadores 16
Sistemas empotrados de tiempo real
Aplicaciones
SO
Hw
• Debido a las restricciones, los sistemas generales son suelen ser adecuados como sistemas empotrados de tiempo real.
UPV - EHU
MOISE
Konputagailuen Arkitektura eta Teknologia SailaDepartamento de Arquitectura y Tecnología de Computadores 17
Sistemas empotrados de tiempo real
Aplicación de TR+
Componentes de SO
Hwempotrado
UPV - EHU
MOISE
Konputagailuen Arkitektura eta Teknologia SailaDepartamento de Arquitectura y Tecnología de Computadores 18
Diseño de sistemas de tiempo real
(Extraído del curso de J.A. de la Puente, UPM)
UPV - EHU
MOISE
Konputagailuen Arkitektura eta Teknologia SailaDepartamento de Arquitectura y Tecnología de Computadores 19
Qué vamos a estudiar…
• Los mecanismos de soporte y de gestión de interrupciones.
• Los conceptos de programación de sistemas – Interfaz de llamadas al sistema operativo– Tareas/Procesos/Threads
• Las políticas de planificación de tareas en sistemas de tiempo real.
• Los conceptos de sincronicación y comunicación entre tareas y su aplicación a la gestión de recursos compartidos.
• La adaptación de las políticas de tiempo real a situaciones con recursos compartidos.