Friedrich-Alexander-Universität Erlangen-Nürnberg  /   Technische Fakultät  /   Department Informatik

Echtzeitsysteme - Übungen

Ziel der Übung

Das Ziel der Übungsaufgaben ist die Entwicklung eines konkreten Echtzeitsystems auf Anwendungsebene. Zu diesem Zweck kommt in diesem Semester das Echtzeitbetriebssystem eCos als Entwicklungsplattform zum Einsatz. eCos wird in den verschiedensten Anwendungen (Kommunikation, Steuerung, ...) und Produkten (z.B. NETGEAR-Routern) eingesetzt und ist auch als Open-Source-Variante verfügbar. In den Übungen wird ein konkretes Echtzeitsystem auf Basis von eCos aufgebaut anhand dessen sich die verschiedenen Problemstellungen bei der Entwicklung solcher Systeme zeigen lassen.

Die Übungsaufgaben sind anwendungs- und praxisorientiert und sollen den Umgang mit einem Echtzeitbetriebssystem veranschaulichen. In diesem Semester entwickeln wir ein einfaches Oszilloskop für dessen korrekte Funktion gewisse Echtzeiteigenschaften eingehalten werden müssen. Dabei setzen wir die erlernten Verfahren und Konzepte aus der Vorlesung konkret um. Die Bearbeitung erfolgt teilweise auf echter Hardware (TriBoard auf Basis des Infineon TC1796), teilweise aber auch in einem Emulator (qemu, FailBochs auf x86).

Für die erfolgreiche Bearbeitung der Übungen sind keine Vorkenntnisse in hardwarenaher Programmierung erforderlich. Wir unterstützen dies bei Interesse in den Rechnerübungen aber gerne.

Umfang der Übungen

Der Umfang der Übungen richtet sich nach den angestrebten Prüfung und den dafür notwendigen ECTS-Punkten (zusätzlich zu den 2,5 ECTS der Vorlesung):

2,5 ECTS: Die Bearbeitung aller Basis-Übungsaufgaben ist verpflichtend.
5,0 ECTS: Die Bearbeitung aller Basis- und Erweiterungs-Übungsaufgaben ist verpflichtend.

Durchführung der Übungen

Die einzelnen Übungsaufgaben werden von jeweils drei Studierenden bearbeitet. Es werden dabei die in der Aufgabe geforderte Komponenten entwickelt und implementiert. In den Rechnerübungen stehen hierbei die Übungsleiter zur Beantwortung von evt. auftretenden Fragen zur Verfügung. Nach vollständiger Bearbeitung einer Übungsaufgabe stellt das jeweilige Team das Ergebnis einem Übungsleiter vor, der dann ggf. Hinweise auf nicht offensichtliche Details des Echtzeitproblems gibt. Für die Implementierung kommt die Programmiersprache C zum Einsatz.

Fragen und Antworten/Mailingliste

Für eine interaktivere Form der Meinungsfindung steht auch eine Mailingliste zur Verfügung: i4ezs@lists.informatik.uni-erlangen.de. In diese Mailingliste kann man sich hier eintragen.

Hardwarenahe Programmierung in C/C++

Für Übungsteilnehmer, die noch keine Erfahrung in der Hardwarenahen Programmierung mit C oder C++ besitzen, haben wir die größten Unterschiede zwischen eingebettetem C/C++ und Java zusammgengefasst.

Zusätzlich haben wir einige allgemeine Tipps für das Programmieren eingebetteter Systeme mit C/C++ zusammengefasst.

Folien und Dokumentation

Weitere Dokumentation zu den eingesetzten Werkzeugen findet ihr hier in Kürze.
Die Foliensätze zu den einzelnen Übungsterminen:
KapitelThemaDatumFolien
U1Organisation 15.10.2015 1x1, 2x2, animiert
U2Hallo Welt 1 1x1, 2x2, animiert
U3Hallo Welt 2 22.10.2015 1x1, 2x2, animiert
U4Antwortzeit 29.10.2015 1x1, 2x2, animiert
URRechnerübung
URRechnerübung 05.11.2015
U5Anwendungsanalyse 12.11.2015 1x1, 2x2, animiert
U6WCET Analyse 1x1, 2x2, animiert
URRechnerübung 19.11.2015
URRechnerübung 26.11.2015
U7Simple Scope 03.12.2015 1x1, 2x2, animiert
URRechnerübung
U8Wiederholung; Nicht periodische Aufgaben 10.12.2015 1x1, 2x2, animiert
U9Cyclic Scope 17.12.2015 1x1, 2x2, animiert
U10Extended Scope 14.01.2016 1x1, 2x2, animiert
U11Zugriffskontrolle 21.01.2016 1x1, 2x2, animiert
URRechnerübung 28.01.2016

Übungsaufgaben

Nr. Titel Kurzbeschreibung Ausgabetermin Abgabe in der Übungswoche vom Vorgaben
1 Hallo Welt Einführung in die Entwicklungsumgebung 22.10.2015 29.10.2015 Aufgabe 1
HelloWorld_tricore.tar.gz
2 Antwortzeit Antwortzeiten von aperiodischen Aufgaben 29.10.2015 18.11.2015 Aufgabe 2
Antwortzeit_tricore.tar.gz
3 Ausführungszeit Laufzeitmessung und Analyse 11.11.2015 25.11.2015 Aufgabe 3
Ausfuehrungszeit.tar.gz
4 Simple Scope Umsetzung eines periodischen Echtzeitsystems am Beispiel eines (einfachen) Oszilloskops 03.12.2015 17.12.2015 Aufgabe 4
SimpleScope.tar.gz
5 Cyclic Scope Einsatz von Strukturelementen für die zyklische Ablaufplanung eines Oszilloskops 17.12.2015 11.01.2015 Aufgabe 5
CyclicScope.tar.gz
6 Extended Scope Aperiodische Steuerung des Oszilloskops 14.01.2016 27.01.2016 Aufgabe 6
ExtendedScope.tar.gz
7 Zugriffskontrolle Zugriffskontrolle und Synchronisationsprotokolle in eCos 21.01.2016 04.02.2016 Aufgabe 7
Betriebsmittelprotokolle.tar.gz

Evaluationsergebnis WS 2015/16

  • LQI: 2,05
  • Evaluationsergebniss:

Terminübersicht (Wochenplanung)

Mo Di Mi Do Fr
08:00
08:30 - 10:00
Ü EZS
(Klaus)
00.153-113
09:00
10:00
11:00
12:00
12:15 - 13:45
Ü EZS
(Wägemann)
00.153-113
12:15 - 13:45
Ü EZS
(Franzmann)
00.153-113
13:00
14:00
14:15 - 15:45
Ü EZS
(Klaus)
00.153-113
15:00
16:00
16:00 - 17:30
Ü EZS
(Franzmann)
00.153-113
17:00