Betriebssysteme für Embedded Computing (2004)

Wintersemester 2004/2005
Prof. Dr. habil. Andreas Polze, Hasso-Plattner-Institut
Dipl. Inf. Andreas Rasche, Hasso-Plattner-Institut

Im Wintersemester 2004/2005 findet eine Vorlesung zum Thema "Betriebssysteme für eingebettete Systeme" statt. Die Vorlesung richtet sich an Studenten im Masterstudium und ist in den Themenkomplexen "Softwaresystemtechnische Vertiefungsthemen" und "Freie Informatikthemen" angesiedelt. Der Umfang der Lehrveranstaltung beträgt 4 SWS. In die Bewertung der Vorlesung (6 benotete Leistungspunkte) geht die Note einer mündlichen Prüfung zu 100% ein. Eine erfolgreiche Teilnahme am Praktikum/Übung ist Prüfungsvorraussetzung. 

Die Verbreitung eingebetteter Systeme stieg in den letzten Jahren rasant. Am Markt existieren weit über 100 Betriebssysteme für eingebettete Steuerungssysteme, wie sie oft in Automobilen oder Industrieautomaten Verwendung finden. In der Vorlesung sollen Konzepte von Betriebssystemen für eingebettete und Echtzeit-Systeme vorgestellt werden und einige Ausgewählte im Detail behandelt werden. Auch Betriebssysteme für mobile Geräte wie Handys und PDAs werden vorgestellt.

In der Vorlesung werden Algorithmen zur Verwaltung von Ressourcen wie Speicher, CPU, Netzwerk u.a.. vorgestellt, an die durch viele Einschränkungen von eingebetteten Systemen besondere Anforderungen gestellt werden. Aber auch aufkommende Konzepte wie die Konfigurierbarkeit von Betriebssystemen und anwendungsspezifische Betriebssysteme werden vorgestellt.

Des Weiteren soll die Forschung am Lehrstuhl „Betriebssysteme und Middleware” im Projekt „Distributed Control Lab” als Fallstudie für den Einsatz von eingebetteten Betriebssystemen vergestellt werden. Die Steuerung des Experiments „Hau den Lukas” wird anhand verschiedener Lösungsstrategien und Verwendung unterschiedlicher Betriebssysteme erläutert und in Übungen und Praktika vertieft.

Weitere interessante Übungen zur Programmierung eingebetteter Geräte werden im neu eingerichteten "Embedded Systems"-Labor des Lehrstuhls Betriebssysteme und Middleware durchgeführt. Dabei sollen verschiedene Aufgaben auf Entwicklungsboards der Atmel AVR 8-Bit RISC Micorcontroller - Reihe gelöst werden. Zusätzlich wird in Vorlesung und Übung die Programmierung Speicher-Programmierbarer-Steuerungen (SPS) vorgestellt. Die Programmierung des Hitachi H8-300 Microcontroller in Lego's Mindstorm Serie wird in weiteren Übungen untersucht. 

Prüfung:

14.2 und 15.2 2005 9.00 Uhr - 16.00 Uhr
Anmeldung ab Dienstag 11.01.2005 9.00 Uhr´

Termin:

Mittwochs 11:00 – 12:30 Uhr A-1.1
Donnerstags 16:00 – 17:30 Uhr A-1.1 und Praktikum

Ablauf:

13.10. Ablauf, OS / RT-Sys Einführung

14.10. DCL Einführung

20.10. Softwareentwicklung für eingebettete Systeme

  • Softwareentwicklung für eingebettete Systeme
  • "Programmierung eingebetteter Software" in Software Engineering für Eingebettete Systeme (Kopiervolage bei Fr. Wagner)
  • "Turning Clockwise: Using UML in the Real-Time Domain", B.Selic ( pdf )
  • "Rate Monotonic Analysis for Real-Time Industrial Computing ( pdf )
  • "Using UML-Based Rate Monotonic Analysis to Predict Schedulabitliy (Kopiervolage bei Fr. Wagner)

21.10. Vergabe Praktikumsaufgaben

27.10. Performance Maße, Scheduling, Misconceptions

28.10. HPI-Kolloquium Professor Gio Wiederhold, Stanford University, "The Product Flow Model CS-Dept.", 16.00 Uhr Hörsaal I

Achtung: 1.11 13.30 Uhr Vortrag Roman Barth Beckhoff Elektronik (Haus C 1.Etage)

3.11. Scheduling, Mars Pathfinder

4.11. Hau-Den-Lukas im DCL

10.11. Memory Management

11.11. HPI Kolloquium

17.11. Interrupts and Exceptions I

18.11. Interrupts and Exceptions II

24.11. Real-Time Communication

25.11. Projektvorstellungen (alle Gruppen bitte zu einer kurzen Rücksprache erscheinen!)

1.12. Group Communication + Clock Synchronization

2.12. 14.00 Uhr Projektvorstellung II (alle Gruppen bitte zu einer kurzen Rücksprache erscheinen!)

2.12. 16.00 Uhr HPI Kolloquium

8.12. Ada Programmierung

 9.12. Studentische Vollversammlung / Projektvorstellung III

15.12. Real-Time Java Programmierung

16.12. *

5.1. Embedded Operating System Standards

6.1. *

12.1. Windows CE (Principles, Components, Processes)

13.1. HPI Kolloquim

19.1. Real-Time und Windows CE / Platform Builder

20.1.

*

26.1. Real-Time Linux

27.1. Projektvorstellungen - Abschlusspräsentation (13.00 Uhr - 16.00 Uhr)

  • 20 min je Gruppe
  • Inhalt: Problemstellung, Lösungsansatz, Implementation, Evaluation, Verwandte Arbeiten 

2.2. eCOS Operating System

3.2. Konsultation zur mündlichen Prüfung

9.2 Abgabe der Praktikumsberichte

* Diese Termine stehen für den Besuch des Institutskolloquiums bzw. der Bearbeitung der Praktikumsaufgaben zur Verfügung.

Praktikumsthemen:

Werden innerhalb der ersten Vorlesungswochen bekannt gegeben. Auf Grund der beschränkten Hardwareressourcen wird das Praktikum in Gruppen von 2-4 durchgeführt. Das Praktikum soll die theoretischen Inhalte der Vorlesung in praktischer Arbeit vertiefen. Am Ende eines Themenkomplexes des Praktikums erfolgt eine kurze Vorstellung der Ergebnisse jeder Gruppe durch einen Vortrag.

Leistungserfassung:

Die Endnote wird in einer abschließenden mündlichen Prüfung ermittelt. Voraussetzung für die Zulassung zur Prüfung ist die regelmäßige Lösung der Aufgaben im Praktikum und der Übung. Zusätzlich soll das am Institut stattfindende Forschungskolloquim mindestens 3 mal im Laufe des Semesters besucht werden.

Termine:

Erste Vorlesung:

13.10.2004 11.00 Uhr 

Prüfung:

14.2 und 15.2 2005 9.00 Uhr - 16.00 Uhr

Literatur:

(1) Real-Time Systems - Hermann Kopetz, Kluwer Academic Publishers
(2) Real-Time Systems - Jane W.S. Liu
(3) Embedded Software Development with eCos - Anthony J. Massa
(4) Programming Microsoft Windows CE .NET, Third Edition - Douglas Boling
(5) Real-Time Systems C.M. Krishna and G. Shin
(6) Computers as Components - Principles of Embedded Computing System Design - Wayne Wolf, Morgan Kaufmann Publishers 2001, ISBN 1-55860-693-9
(7) An Embedded Software Primer - David E. Simon, Addison-Wesley 1999, ISBN 0-201-61569-X
(8) Programming Embedded Systems in C and C++ - Michael Barr, O'Reily 1999, ISBN 1-56592-354-5
(9) Real-Time Concepts for Embedded Systems - Qing Li, CMPBooks 2003, ISBN 1-57820-124-1 

erstellt von Andreas Rasche