Veranstalter | Prof. Dr.-Ing. Alois Knoll, Dr. Christian Buckl |
Modul | IN2060 |
Typ | Vorlesung |
Semester | WS 2009/2010 |
ECTS | 6.0 |
SWS | 3V+2Ü |
Hörerkreis | Wahlfach für Studenten der Informatik (Bachelor,Informatik) Vorlesung im Bereich Informatik II (Technische Informatik - Diplomstudiengang) Wahlpflichtvorlesung im Gebiet Echtzeitsysteme und Robotik Wahlpflichtvorlesung für Studenten der Elektrotechnik und Informationstechnik Pflichtvorlesung für Studenten MW Richtung Mechatronic Bachelor/Masterstudiengang Informatik |
Zeit & Ort | Di 10:15 - 11:45 MI HS 2 Mi 12:15 - 13:00 MI HS 2 |
Übungstermine | Mo 14:00-15:30 (0 freie Plätze) MI 03.05.012 Di 08:30-10:00 (0 freie Plätze) MI 03.05.012 Mi 10:15-11:45 (0 freie Plätze) MI 03.05.012 Mi 14:00-15:30 (0 freie Plätze) MI 03.05.012 Fr 14:00-15:30 (4 freie Plätze) MI 03.05.012 |
Schein | erfolgreiche Teilnahme an Klausur |
Aktuelles
- Die Klausur ist korrigiert und die Ergebnisse sind für alle Studenten, die sich über TUM-Online angemeldet haben, einsehbar. Die Klausureinsicht findet am Mittwoch den 17.02.2010 um 14:00 im Raum MI 03.07.023 statt. Bitte bringen Sie unbedingt Ihren (Studenten-/Lichtbild-)Ausweis zur Einsicht mit! Eine weitere Einsicht wird Anfang des nächsten Semesters, am 21.04.2010 um 14:00 im Raum MI 03.09.014 angeboten.
- Prof. Reinhard Wilhelm hält am 03.02.2010 eine Vorlesung zu Worst Case Execution Time Analyse.
- Die Anmeldung zur Klausur ist bis zum 31.01.2010 über TUMOnline möglich.
- In der Woche vom 01.02. bis 05.02.2010 findet statt der Übungen jeweils eine Fragestunde statt.
- Hinweis zur Klausur WS 06/07 Aufgabe 6 b): Bei der Aufgabe wird davon ausgegangen, dass die Daten ohne Verarbeitungszeit, also unmittelbar weitergeschickt werden.
- Lösung zu den Aufgaben auf Folie 234.
Beschreibung
Bei Echtzeitsystemen ist neben der Korrektheit des Rechenergebnis auch der Zeitpunkt der Ergebnisbereitstellung entscheidend. Ein klassisches Beispiel ist der Airbag: im Fall eines Unfalls muss der Airbag innerhalb weniger Millisekunden aufblasen, ansonsten hat das System versagt. Echtzeitsysteme sind in allen Bereichen der Industrie und im Alltag zu finden: Roboter, Autos, Flugzeuge, Medizingeräte, Handys und vieles mehr sind ohne Kenntnisse im Bereich der Echtzeitsysteme nicht zu entwickeln. Die Vorlesung vermittelt die Grundkenntnisse für diesen Bereich und gibt einen Einblick in aktuelle Forschungsthemen. Anhand von Übungen, sowohl in der Vorlesung als auch am Rechner, werden die erlernten Kenntnisse praktisch angewandt und vertieft. Inhalt:- Einführung Echtzeitsysteme
- Modellierung von Echtzeitsystemen & Werkzeuge
- Nebenläufigkeit: Prozesse, Threads und Interprozesskommunikation
- Scheduling
- Echtzeitbetriebssysteme
- Echtzeitprogrammiersprachen
- Uhren
- Echtzeitfähige Kommunikation
- Hardware für Echtzeitsysteme
- Einführung in Regelungstechnik
- Fehlertolerante Systeme
Klausur
- Für Studenten, die einen Schein benötigen, wird am Ende der Vorlesung eine schriftliche Klausur angeboten.
- Stoff der Klausur sind die Inhalte der Vorlesung.
- Termin:
- 09.02.2010 16:00-18:00 Uhr
- Ort: CH21010
- Voraussichtlich erlaubte Hilfsmittel: keine
- Einsicht: Mittwoch, 17.02.2010, 14:00
Material
- Folien:
- Folien zur Vorlesung am 20.10.2009: Einleitung
- Folien zur Vorlesung am 21.10.2009: Echtzeitsysteme im Alltag
- Folien zur Vorlesung am 27.10.2009: Modellierung von Echtzeitsystemen und Werkzeuge
- Folien zur Vorlesung am 28.10.2009: Ptolemy
- Folien zur Vorlesung am 04.11.2009: Models of Computation, Synchrone Sprachen
- Folien zur Vorlesung am 10.11.2009: Esterel
- Folien zur Vorlesung am 11.11.2009: Esterel 2. Teil, Automaten (korrigierte Version vom 05.01.10)
- Folien zur Vorlesung am 18.11.2009: Verifikation
- Folien zur Vorlesung am 24.11.2009: EasyLab, Giotto
- Folien zur Vorlesung am 25.11.2009: Nebenläufigkeit: Prozesse, Threads
- Folien zur Vorlesung am 01.12.2009: Nebenläufigkeit: Unterbrechungen
- armVIC.h: Macros ISR_ENTRY() und ISR_EXIT() zur Folie 172
- Datenblatt zum intel 8259A Programmable Interrupt Controller
- Datenblatt zum Intel 82093AA I/O Advanvced Programmable Iinterrupt Controller (IOAPIC)
- Handbuch zum KIM-1 Microcomputer
- Datenblatt zur Motorola M68HC11E Microcontroller Baureihe
- Datenblatt zur MOS MCS6500 Microcontroller Baureihe
- Handbuch zur Programmierung der MOS MCS6500 Microcontroller Baureihe
- Datenblatt zum Rockwell R6522 Versatile Interface Adapter (VIA)
- Handbuch zur ZILOG Z80 Microcontroller Baureihe
- Datenblatt zur ZILOG Z80 Microcontroller Baureihe
- Handbuch zur Peripherie der ZILOG Z80 Microcontroller Baureihe
- Handbuch zur Philips LPC213x Microcontroller Baureihe
- Datenblatt zur WDC W65C816S Microcontroller Baureihe
- Folien zur Vorlesung am 08.12.2009: Nebenläufigkeit: Semaphoren
- Folien zur Vorlesung am 09.12.2009: Nebenläufigkeit: Semaphoren (Klausuraufgabe)
- Folien zur Vorlesung am 15.12.2009: Nebenläufigkeit: Monitore, IPC: Message Queues, Signale
- Folien zur Vorlesung am 16.12.2009: Nebenläufigkeit: OCCAM, RPC, CORBA
- Folien zur Vorlesung am 22.12.2009: Scheduling: Einführung
- Lösung zur Aufgabe auf Folie 235 (Vorlesung am 23.12.2009)
- Folien zur Vorlesung am 12.01.2010: Scheduling: EDF, LST
- Folien zur Vorlesung am 13.01.2010, Lösung zur Aufgabe auf Folie 305/306
- Folien zur Vorlesung am 19.01.2010: Kommunikation: CAN, Token Ring, FDDI, MAP / Token Bus, TTP (UPDATE)
- Folien zur Vorlesung am 20.01.2010, Lösung
- Folien zur Vorlesung am 26.01.2010: FlexRay von Karl Leiss
- Folien zur Vorlesung am 26.01.2010: Echtzeitbetriebssysteme: Einführung, OSEK, TinyOS
- Folien zur Vorlesung am 27.01.2010: Organisatorisches
- Folien zur Vorlesung am 27.01.2010: Zeit von Johannes Jilg
- Folien zur Vorlesung am 02.02.2010: Echtzeitbetriebssysteme QNX, VxWorks, PikeOS, Linux 2.6, RTLinux / RTAI, Windows CE / Embedded
- Folien zur Einführung in die Regelungstechnik am 02.02.2010 von Alexander Schaefer
- Folien zur WCET-Analyse am 03.02.2010 von Prof. Reinhard Wilhelm
- Kompletter Foliensatz zur Vorlesung (Achtung: Datei kann groß werden, um Bearbeitungszeit der Klausuraufgaben ergänzt)
Übung
Übungsleitung
Allgemeines
Aufgabenblatt 1 (2. bis 6.11.2009)
Aufgabenblatt 2 (9. bis 13.11.2009)
Aufgabenblatt 3 (16. bis 20.11.2009)
Aufgabenblatt 4 (23. bis 27.11.2009)
Aufgabenblatt 5 (30.11. bis 4.12.2009)
Aufgabenblatt 6 (7. bis 11.12.2009)
Aufgabenblatt 7 (14. bis 19.12.2009)
Aufgabenblatt 8 (21. bis 8.01.2010)
- Blatt 8
- Rahmenprogram für Blatt 8
- Musterlösung für Blatt 8
- Musterlösung (mit einer Timer Implementierung) für Blatt 8
Aufgabenblatt 9 (11.01.2010 bis 15.01.2010)
Aufgabenblatt 10 (18.01.2010 bis 22.01.2010)
Literaturhinweise
- Albert Benveniste and Gerard Berry: The Synchronous Approach to Reactive and Real-Time Systems. In Proceedings of the IEEE, VOL. 79, NO. 9, SEPTEMBER 1991
- Frederic Boussinot and Robert de Simone: The ESTEREL Language. In Proceedings of the IEEE, VOL 79, NO 9, SEPTEMBER 1991
- Nicholas Halbwachs, Paul Caspi, Pascal Raymond and Daniel Pilaud: The Synchronous Data Flow Programming Language LUSTRE. In Proceedings of the IEEE, VOL 79, NO. 9, SEPTEMBER 1991
- Paul le Guernic, Thierry Gautier, Michel le Borgne and Claude le Maire: Programming Real-Time Applications with SIGNAL. In Proceedings of the IEEE, VOL. 79, NO. 9, SEPTEMBER 1991
- P. Caspi, D. Pilaud, N. Halbwachs, J. A. Plaice: LUSTRE: A declarative language for programming synchronous systems. In Proceedings of the 14th ACM SIGACT-SIGPLAN symposium on Principles of programming languages, 1987
- Empfehlenswerte Bücher:
[1] | Hermann Kopetz. Real-Time Systems: Design Principles for Distributed Embedded Applications. Springer, April 1997. Überblick. |
[2] | Jane W. S. Lui. Real-time Systems. Prentice Hall, April 2000. Überblick, Schwerpunkt Scheduling. |
[3] | Stuart Bennett. Real-Time Computer Control: An Introduction. Prentice Hall, February 1994. Überblick, Hardware. |
[4] | Alan Burns and Andy Wellings. Real-Time Systems and Programming Languages. Addison Wesley, March 2001. Schwerpunkt: Programmiersprachen. |
[5] | Qing Li and Caroline Yao. Real-Time Concepts for Embedded Systems. CMP Books, July 2003. Schwerpunkt: Programmierung. |
[6] | Bill O. Gallmeister. Programming for the Real-World: POSIX.4. O'Reilly Media, January 1995. Schwerpunkt: POSIX. |
- Weitere Literaturhinweise werden jeweils zum Beginn eines neuen Vorlesungskapitels angegeben.
Software
-
SCADE licenses kindly provided by Esterel Technolgoies
Academic partner of Esterel Technologies, the provider of model-based solutions for DO-178B and IEC 61508 safety-critical systems.
- Esterel Studio licenses kindly provided by
-
Ptolemy II available from CHESS at UC Berkeley.