11. Anlage
 
zurück
11.4 Echtzeitanwendungen


Eine Echtzeitanwendung ist ein Programm, das seine Aktionen innerhalb von Zeitschranken durchführt. Zeitschranken können z. B. Anforderungen derart sein, daß gleiche Aktionen in bestimmten Zeitintervallen wiederholt werden müssen, Aktionen vor Eintreten von Zeitschranken beendet sein müssen oder die Zeitspanne zwischen dem Eintreten von Ereignissen minimiert werden muß. Echtzeitsysteme sind also Programme, deren Korrektheit nicht nur von der Korrektheit der Rechenergebnisse abhängen, sondern auch von dem Zeitpunkt, zu dem die Rechenergebnisse zur Verfügung stehen.

Nicht alle nebenläufigen Programme sind Echtzeitprogramme (Nebenläufigkeit), aber Echtzeitprogramme bestehen aus verschiedenen Sequenzen von Aktionen, die parallel ablaufen. Ada stellt zur Implementierung der verschiedenen Sequenzen von Aktionen parallele Prozesse zur Verfügung.

Der Sprachkern von Ada sagt wenig aus zu den Themen Scheduling und Prioritäten von parallelen Prozessen. Eine der Aussagen zu parallelen Prozessen ist, daß Eingangsaufrufe von parallelen Prozessen in der Reihenfolge ihres Eintreffens bearbeitet werden.

Die Anlage "Echtzeitsysteme" stellt dem Ada-Programmierer weitere Sprachelemente zur genauen Steuerung des Verhaltens von Programmen mit parallelen Prozessen zur Verfügung. Ein Ada-Übersetzer und das dazugehörige Laufzeitsystem, das die Anforderungen der Anlage "Echtzeitsysteme" erfüllt, muß auch den Anforderungen der Anlage "Systemprogrammierung" entsprechen.

Viele Sprachelemente in der Anlage werden durch ein Konfigurationspragma aufgerufen. Ein Konfigurationspragma spezifiziert eine Option, die für alle Übersetzungseinheiten Gültigkeit besitzt. Ein Konfigurationspragma ist nur in einem Übersetzungslauf erlaubt, der keine Übersetzungseinheiten enthält. In diesem Falle wird das Pragma auf alle nachfolgend übersetzten Einheiten angewendet. So sind z. B. die in den nachfolgenden Abschnitten beschriebenen Pragmas "Queuing_Policy" und "Task_Dispatching_Policy" Konfigurationspragmas.

Alle in der Anlage diskutierten Sprachelemente dienen zur Steuerung von parallelen Prozessen und können zu folgenden Gruppen zusammengefaßt werden:
  • Prioritäten paralleler Prozesse
  • Synchronisationssteuerung
  • Abbruchanweisung
  • Konfigurierbare Einschränkungen beim Prozeßmodell
  • Monotones Zeitpaket
  • Verzögerungsanweisungzögerungsanweisung


 
zurück
 Index   Ada Tour - Dokumentation  
© 2003 Förderverein Ada Deutschland e.V.