|
|
 |
 |
Echtzeitsysteme 2 (EZS2) SS 2007
Überblick
Diese Veranstaltung ist die Fortführung der Vorlesung Echtzeitsysteme,
die im Wintersemester angeboten wurde. Die dort vermittelten, für die
Entwicklung von Echtzeitsystemen relevanten, Grundlagenkenntnisse, werden in der
Veranstaltung Echtzeitsysteme 2 in die Praxis umgesetzt. Am Beispiel
verschiedener Experimente werden alle Phasen der Entwicklung eines
Echtzeitsystems durchlaufen:
Phase 1: Analyse
Der Entwicklung eines Echtzeitsystems geht zunächst eine gründliche Analyse der
zu kontrollierenden Echtzeitentität voraus. Diese Analyse umfasst sowohl die
Erfassung von funktionalen Anforderungen an das Echtzeitsystem, als auch die
Ermittlung nicht-funktionaler Parameter wie z.B. zeitliche
Randbedingungen. Neben dem eigentlichen zu kontrollierenden physikalischen
Objekt, ist aber auch noch das Umfeld interessant, das man zur Kontrolle dieses
Objekts benutzt, bzw. was überhaupt notwendig ist, um das Objekt entsprechend
der Anforderungen kontrollieren zu können. Aus diesem Grund wird auch der
Prozess betrachtet, der z.B. die Entscheidung für einen bestimmten
Mikrocontroller oder ein bestimmtes Betriebssystem hervorbringt.
Phase 2: Implementierung der Teilkomponenten
Sobald die funktionalen Anforderungen feststehen, kann mit der Entwicklung und
Implementierung gewisser Teilkomponenten, wie z.B. Treiber für bestimmte
Schnittstellen oder Bibliotheken für verschieden Berechnungen begonnen
werden. Entscheidend hierbei ist eine gute Gliederung des Systems in geeignete
Teilkomponenten und eine entsprechende Spezifikation dieser Komponenten. Nur auf
diese Weise lässt sich Komplexität reduzieren und reibungsloses Zusammenspiel
der einzelnen Komponenten garantieren.
Phase 3: Testen der Teilkomponenten
Um alle Teilkomponenten später zu einem kompletten Echtzeitsystem vereinen zu
können, ist es notwendig, deren funktionale und nicht-funktionale Eigenschaften
zu überprüfen. Für die funktionalen Eigenschaften ist die Einhaltung der in
Phase 2 erstellten Spezifikation notwendig, für die nicht-funktionalen
Eigenschaften ist besonders das zeitliche Verhalten der Komponenten
interessant. Ohne dieses Wissen, ist es unmöglich ein Echtzeitsystem zu
entwickeln. Hier müssen demzufolge die Worst Case Execution Times
(WCETs) der einzelnen Komponenten bestimmt werden.
Phase 4: Komposition
Sind die Zeitparameter der einzelnen Teilkomponenten bekannt, kann man sich
Gedanken über die Struktur des fertigen Echtzeitsystems machen. Diese Aufgabe
umfasst z.B. das Erstellen statischer Ablauftabellen für ein zeitgesteuertes
Echtzeitsystem oder die Vergabe von Prioritäten für ein vorranggesteuertes
Echtzeitsystem, sowie die Abbildung der einzelnen Komponenten auf durch das
Laufzeitsystem zur Verfügung gestellte Abstraktionen (z.B. Fäden oder
Semaphore).
Phase 5: Akzeptanztest
Hat man in den vorherigen Phasen alles richtig gemacht, sollte das
Echtzeitsystem nun einwandfrei seinen Dienst tun. Die Gewährleistung dafür
bringt ein Akzeptanztest, der das Echtzeitsystem gegen die in Phase 1 erstellte
Spezifikation für das Echtzeitsystem prüft.
Nähere Informationen zu den einzelnen Experimenten werden demnächst auf den
WWW-Seiten zu dieser Veranstaltung veröffentlicht. Bei Fragen bezüglich
dieser Veranstaltung wenden Sie sich bitte an
Fabian Scheler
(Mail) oder
Michael Stilkerich
(Mail).
|
 |
 |
|