Real-Time Operating Systems Flashcards
Welche Operating Systems gibt es?
- General Purpose Operating Systems (GPOS) für normale Computer
- Real Time Operating Systems (RTOS) für eingebettete Computer
Warum braucht ein eingebettetes System ein spezielles Operating System?
Es gibt fundamentale Unterschiede in:
- Verfügbarkeit
- Sicherheit
- Zeitlicher Vorhersagbarkeit
- Gleichzeitigkeit
- Parallelität
Was sind die Haupteigenschaften und Anforderungen für ein Real-Time Operating System?
- Deterministisches zeitliches Verhalten
- Verarbeitung von externen Ereignissen mit kurzen Reaktionszeiten
- Geringer Ressourcenverbrauch
- Verlässlichkeit
- Skalierbarkeit
Was ist ein Process?
- Programm in Ausführung und sein Zustand (dynamisch)
- Grundlage für parallele und quasi-parallele Ausführung von Programmen
Was ist ein Programm?
Abfolge von Anweisungen (statisch)
Was ist die Motivation für Processes?
- Effektivere Nutzung von Ressourcen
- Anforderung gleichzeitiger Aktionen
Was ist das Ziel der Concurrency (Gleichzeitigkeit) in Embedded Systems?
Das Ziel ist Aktualität, weder zu früh, noch zu spät
Was gehört zum Process Management?
- Liste für jeden Process Status
- Zustandsübergänge durch Entfernung und Wiedereintritt
- Process Scheduler
Was macht der Process Scheduler?
- Entferne den Process aus der Bereitschaftsliste und weise ihn dem Prozessor zu
- Scheduling Entscheidungen berücksichtigen Zeiten und Processes für Prozessor Zuweisung
- Zuständig für Kontextwechsel: Speichern/Wiederherstellen des Registerinhalts
Welche Process Zustände gibt es?
- Created
- Ready
- Running
- Blocked
- Suspended
- Dead
Wofür ist die Timer Interrupt Service Routine zuständig?
Für die Abfertigung eines Prozesses
Wie läuft die Abfertigung eines Prozesses ab?
- Interrupts deaktivieren
- Register im aktuellen Prozessdeskriptor speichern
- Speichern der Rücksprungadresse vom Stack für den aktuellen Prozess
- Bestimmen, welcher Prozess ausgeführt werden soll (scheduling)
- Wenn es derselbe ist, Interrupt aktivieren und Return
- Prozesszustand in Maschinenregister kopieren
- Ersetzen des Programmzählers auf dem Stack für den neuen Prozess
- Interrupts aktivieren
- Return
Was ist Sampling?
Unter Sampling versteht man die periodische Abfrage des Zustands einer RT-Entity durch einen Computer
Wie bezeichnet man die Zeit zwischen zwei Abtastpunkten?
Abtastintervall
Wodurch wird die Länge eines Abtastintervalls bestimmt?
Die Länge eines Abtastintervalls wird bestimmt durch die Dynamik der Echtzeiteinheit
Was ist der Unterschied beim Sampling zwischen States und Events?
- States (Zustände) können durch Abtasten beobachtet werden
- Events (Ereignisse) müssen in einem Speicherelement gespeichert werden
Was ist ein Interrupt?
- Ein Interrupt ist ein Hardware-Mechanismus, der periodisch (nach jeder Instruktion) den Zustand einer spezifischen Signal Line überwacht
- Wenn die Linie aktiv ist, während der Interrupt nicht deaktiviert ist, wird die Kontrolle vom aktuellen Prozess an einem Prozess übertragen, der mit der Bedienung des Interrupts verbunden ist
- Ein externes Ereignis zwingt den Computer in den Interrupt-Service Zustand
Welche drei Prozesse werden verwendet, um einen Interrupt zu behandeln?
- Zeitfenster wird durch ersten dynamischen TT-Prozess geöffnet
- Während des Zeitfensters kann es zu einem Interrupt kommen; Der dritte Prozess, der ET-Interrupt-Service-Prozess, wird aktiviert und schließt das Zeitfenster
- Zeitfenster wird durch zweiten dynamischen TT-Prozess geschlossen, wenn kein Interrupt aufgetreten ist