190 likes | 372 Views
Master en Ingeniería de Sistemas Empotrados. Introducción al tiempo real en sistemas empotrados. Departamento de Arquitectura y Tecnología de Computadores Universidad del País Vasco / Euskal Herriko Unibertsitatea. Parte I: Fundamentos. Contenido. Introducción Soporte de interrupciones
E N D
Master en Ingeniería de Sistemas Empotrados Introducción al tiempo real en sistemas empotrados Departamento de Arquitectura y Tecnología de Computadores Universidad del País Vasco / Euskal Herriko Unibertsitatea Parte I: Fundamentos Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores
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 Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores
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. Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores
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 Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores
IntroducciónContenido • Sistemas de propósito general • Sistemas empotrados • Sistemas de tiempo real Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores
Sistemas de propósito general Aplicaciones SO Hw Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores
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 Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores
Sistemas empotrados • Conjunto hardware/software • integrado dentro de un sistema más complejo, • al que controla, • que usualmente funciona sin intervención humana Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores
Sistemas empotrados Sistema sensor Sistema controlado Sistema de control Sistema actuador Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores
Sistemas empotradosEjemplo (Extraído del curso de J.A. de la Puente, UPM) Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores
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 Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores
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 Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores
Tipos de sistemas de tiempo realsegún el plazo (Extraído del curso de J.A. de la Puente, UPM) Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores
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: Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores
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. Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores
Debido a las restricciones, los sistemas generales son suelen ser adecuados como sistemas empotrados de tiempo real. Sistemas empotrados de tiempo real Aplicaciones SO Hw Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores
Sistemas empotrados de tiempo real Aplicación de TR + Componentes de SO Hw empotrado Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores
Diseño de sistemas de tiempo real (Extraído del curso de J.A. de la Puente, UPM) Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores
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. Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores