Echtzeitsystem

Zunächst werden zum weiteren Verständnis notwendige Begriffe definiert, anschließend wird auf den Unterschied zwischen harter und weicher Echtzeit eingegangen. Die Anforderungen an ein Echtzeitsystem werden geschildert. Am Beispiel von Funktionalitäten eines Autos wird die Dringlichkeit von Priorisierung vermittelt. In einem Unterkapitel werden die Unterschiede zwischen einem konventionellen und einem Echtzeit Betriebssystem erläutert.

Latenzzeit
ist die Dauer zwischen Aktion (zum Beispiel Tastendruck) und Reaktion (Darstellung des entsprechenden Zeichens auf dem Bildschirm).
maximale Ausführungszeit
eines Programms, ist die Zeit, die das Programm benötigt um Datensätze zu verarbeiten (wird in der Regel als Formel abhängig von angegeben).
Priorität
beschreibt die Dringlichkeit eine Aufgabe abzuarbeiten. Je höher die Priorität desto wichtiger ist die Bearbeitung.
Deadline
definiert den Zeitpunkt zu dem das Programm garantiert ein Ergebnis berechnet haben muß: . Ein Ergebnis nach diesem Zeitpunkt ist unter harten Echtzeitbedingungen unbrauchbar.

Ein Echtzeitsystem mit harten Echtzeitanforderungen garantiert, dass das Ergebnis einer Berechnung innerhalb eines vorgegebenen Zeitintervalls geliefert wird. Die maximal erlaubte Bearbeitungsdauer für die Berechnung und die Einheit des Zeitintervalls wird von den Anforderungen an die Anwendung definiert.

Um harte Echtzeitbedingungen in einem System gewährleisten zu können, müssen:

Ist von weichen Echtzeitanforderungen die Rede, so darf ein definierter, geringer Prozentsatz aller Anfragen die Deadline überschreiten. In industriellen Steuerungen ist diese Echtzeit unbrauchbar.

In der Regel sind nicht alle Aufgaben einer Applikation zeitkritisch. Beispielsweise ist es in einem Auto unverzichtbar, dass Sicherheitsfunktionen wie Airbag, ABS, ESP rechtzeitig funktionieren. Unwichtiger ist, dass der elektrische Fensterheber in kritischen Situationen latenzfrei reagiert. Dies geschieht, indem die Sicherheitsfunktionen höher priorisiert werden, als die Komfortfunktionen. Eine Komfortfunktion darf niemals das Abarbeiten einer Sicherheitsfunktion behindern. Würde dies geschehen, wäre von einer Priority Inversion die Rede.



Subsections
Manuel Traut 2007-02-25