Realzeitbetrieb Flashcards
Was ist ein Realzeitsystem?
Als Realzeitsystem wird die zentrale informationsverarbeitende Komponente eines technischen Systems bezeichnet, welches neben den funktionalen Anforderungen auch zeitlichen Anforderungen genügen muss
Wie nimmt die Komponente die Außenwelt dar?
Sensoren
Wie nimmt die Komponente Einfluss?
Aktoren
Welche zwei Komponeten sind die zentralen Beschreibungsgrößen?
- Der technische Prozess (Außenwelt) stellt die
zeitlichen Vorgaben - Die Realisierung des Taskgebildes auf einer
spezifischen Hardware reflektiert die zeitlichen
Möglichkeiten.
Was versteht man unter Rechenzeitanforderung (technischer Prozess)?
- Der technische Prozess löst Ereignisse aus die von
Steuerung verarbeitet werden müssen -> benötigt Zeit - Rechenzeitanforderungen (Ereignisse des technischen
Prozesses) werden durch Buchstaben gekennzeichnet. - Grafik stellt Zeitpunt der Rechenzeitanforderung mit
Buchstabe dar dar
An welchen Bedinungen lässt sich sich ableiten ob eine Aufgabe in Realzeit verarbeitet wird?
Auslastungsbedingung
Rechtzeitigkeitsbedingung
Was ist die Auslastungsbedingung?
Ein Realzeitsystem muss in der Lage sein, die auftretenden Anforderungen in der Summe bearbeiten zu können -> Gesamtauslastung ρges kleiner als 100% sein muss EinKernProzessor.
Was ist die Rechtzeitigkeit?
Die Antwort auf eine Rechenzeitanforderung darf nicht zu
früh und auch nicht zu spät erfolgen; sie muss pünktlich
beziehungsweise rechtzeitig sein
Was ist ein hartes oder weiches Realzeitsystem?
Hart > Nutzen wenn Rechtzeitigkeit eingehalten
Weich > Nutzen wenn Rechtzeitigkeit nicht immer eingehalten
Kein > Unabhängig von zeitlichen Anforderungen
Wie nennt man die Unterbrechbarkeit der Codeausführung?
Preemption
Was sind Probleme der Prioritäten gesteuerten Abarbeitung von Tasks?
Schutz kritischer Abschnitte
Prioritätsinversion
Was ist Prioritätsinversion und wie entstehen diese?
Nieder Priore Tasks sperren kritischen Bereich der erst nach Abarbeitung wieder freigegeben wird >
lange Wartezeit für hoch priore Tasks
Welches Verfahren wird eingesetzt um die Prioritätsinversion zu verhindern?
Wie funktioniert dieses?
Priority Inhertiance Protokoll
Protokoll
Ressourcen (R) Zuteilung:
R frei: R -> Task
R nicht frei: Task blockieren
Prioritätsvererbung Wird Task THigh blockiert, so erbt die Task TLow, die die Ressource besitzt, die Priorität von THigh.
Gibt Task TLow die
Ressource frei,
erhält TLow wieder die
ursprüngliche Priorität
verhindert keine Deadlocks
Welches einfache Verfahren wird eingesetzt um die Prioritätsinversion zu verhindern?
Wie funktioniert dieses?
Non Preemptible Critical Sections (NPCS)
- Reduzierung der zeitlichen Verzögerungen
durch eine Unterbrechungssperre (NPCS).
- Einfach zu implementieren (z.B.
Interruptsperre)
- Deadlocks können nicht auftreten
- gilt für statische und dynamische Prioritäten