Eingebettete Echtzeitsysteme (2003)

Armin Zimmermann

Lehrinhalte

Ein wichtiger Bestandteil von immer mehr Geräten des täglichen Lebens sind eingebettete Rechner. Die Verbindung mit einem technischen Prozess oder seine Steuerung erfordert dabei die rechtzeitige und zuverlässige Reaktion auf die Umwelt. Schwerpunkt der Lehrveranstaltung sind ihr Entwurf, die Analyse und Programmierung. Vorteilhaft sind Vorkenntnisse aus Softwareengineering/Softwarekonstruktion, Systemmodellierung und Betriebssystemen. Behandelt werden folgende Themen:
  • Einführung in die Softwareentwicklung für Eingebettete Echtzeitsysteme (EES)
  • Hardware-Architektur von EES, Prozessoren, Sensoren
  • Betriebssysteme für EES, Eigenschaften, Beispiele, Schedulingverfahren
  • Nebenläufige Prozesse in EES, Synchronisation und Kommunikation
  • Softwareentwurf von EES, Besonderheiten beim Entwurfsprozess, Spezifikationstechniken, Real-Time UML
  • Analyseverfahren für EES, Stochastische Grundlagen, Stochastische Prozesse, Modellierungstechniken, Zeiterweiterte Petri-Netze, Numerische Analyse, Leistungsbewertung
  • Programmierung von EES, RT-Linux

Leistungserfassung

Während des Semesters werden von den Studierenden anhand eines Beispiels die verschiedenen Schritte des Entwurfs und der Analyse von Echtzeitsystemen geübt. Etwa alle zwei Wochen ist dazu eine Hausaufgabe anzufertigen und abzugeben. Die Hausaufgaben werden in Gruppen angefertigt. Zum Ende des Semesters werden die Texte jeder Gruppe in einem Bericht zusammengefasst. Jeder Student präsentiert im Laufe des Semesters einmal die Ergebnisse einer Hausaufgabe. Eine mündliche Prüfung bildet den Abschluss der Lehrveranstaltung. In die Benotung gehen die Präsentation mit 20%, der Bericht mit 30% und die mündliche Prüfung mit 50% ein. Es werden 6 Leistungspunkte vergeben, wenn jedes Teilergebnis mindestens mit "ausreichend" bewertet wurde.

Literatur

  • Software Engineering for Real-Time Systems. Jim Cooling, Addison Wesley 2003
  • Real-Time UML. Bruce P. Douglass, Addison-Wesley 1998.
  • Real-Time Systems. Jane Liu, Prentice-Hall 2000.
  • Stochastic Petri Nets - An Introduction to the Theory. Falko Bause und Pieter Kritzinger Vieweg Verlag 2002.
  • Probability & Statistics with Reliability, Queueing, and Computer Science Applications. Kishor S. Trivedi. Prentice-Hall 1982.
  • An Embedded Software Primer. David Simon, Addison-Wesley 1999.
  • Programming Embedded Systems in C and C++. Michael Barr, O'Reilly 1999.
  • UML Profile for Schedulability, Performance, and Time Specification. OMG 2003.

Vorlesungen

Wöchentlich Montag 11:00 - 12:30 Uhr, Raum HPI B-E.2

Inhalt der Vorlesung:
  1. Organisation und Einstieg
  2. Grundlagen
  3. Rechnerarchitektur
  4. Betriebssysteme
  5. Synchronisation
  6. Softwareentwurf
  7. Petri-Netze
  8. Stochastische Grundlagen
  9. Stochastische Prozesse
  10. Analyse Stochastischer Petri-Netze
  11. RTLinux
  12. Nicht-Markowsche Modelle
  13. Prüfungsvorbereitung

Übungsaufgaben

Übungstermin: Wöchentlich Montag 13:15 – 14:45 Uhr, Raum HPI B-E.2 (Ab 5.1.2004: Rechnerraum C-1.15)

Übungsaufgaben:
  1. Aufgabe 1 (Systembeschreibung), Abgabe 3. November 2003
  2. Aufgabe 2 (Systementwurf, Hardware), Abgabe 17. November 2003
  3. Aufgabe 3 (Softwareentwurf), Abgabe 8. Dezember 2003 (verschoben!)
  4. Aufgabe 4 (Leistungsbewertung), Abgabe 19. Januar 2004
  5. Aufgabe 5 (Programmierung unter RTLinux), Abgabe 2. Februar 2004

Letzte Änderung: 18. März 2004