Echtzeitbetriebssysteme Proseminar Technische Informatik Gregor Schräder SS 2002.
-
Upload
gertraud-heitman -
Category
Documents
-
view
108 -
download
1
Transcript of Echtzeitbetriebssysteme Proseminar Technische Informatik Gregor Schräder SS 2002.
EchtzeitbetriebssystemeEchtzeitbetriebssysteme
Proseminar Technische Informatik
Gregor Schräder
SS 2002
Echtzeitbetriebssysteme - Gregor Schräder
2
ÜberblickÜberblick
Was ist ein Echtzeitbetriebssystem?Weiche - Harte EchtzeitEinsatzgebieteAufgaben eines BetriebssystemsAufbau eines BetriebssystemsBeispiele & Ausblick
Echtzeitbetriebssysteme - Gregor Schräder
3
Echtzeitbetriebssystem - was ist das?Echtzeitbetriebssystem - was ist das?
DIN 44300 (1985): – „Betrieb eines Rechensystems, bei dem Programme zur
Verarbeitung anfallender Daten ständig betriebsbereit sind derart, dass die Verarbeitungsergebnisse innerhalb einer vorgegebenen Zeitspanne verfügbar sind“.
Eigenschaften:– Rechtzeitigkeit und Gleichzeitigkeit
– Unterbrechungsfähigkeit (Interruptverwaltung)
– Sichere Ressourcenverwaltung
– Definierte Reaktion auf Fehlerzustände
Echtzeitbetriebssysteme - Gregor Schräder
4
Vergleich „normales“ BS - RTOSVergleich „normales“ BS - RTOS
• hohe Antwortzeiten
• hohe Schedulingzeiten
• unbekannte Interruptsperren
• nichtunterbrechbare Kernelaufrufe
• „gerechte“ Rechenzeit- aufteilung
• Annahme jedes Prozesses
• Latenzzeiten gering
• Scheduling im µs Bereich
• bekannte Interruptbehandlung
• teilweise preemptive Kernel
• Prioritätsklassen im Scheduler
• Last- und Möglichkeitsanalyse
„normales“ BS Echtzeit BS
Echtzeitbetriebssysteme - Gregor Schräder
5
„„Weiche“ - „Harte“ EchtzeitWeiche“ - „Harte“ Echtzeit
„Weiche“ Echtzeit:– definierte Zeitforderungen– niedrige Kosten bei verspäteten Ergebnissen – Akzeptierung einer geringeren Performance bei einer Verspätung
„Harte“ Echtzeit:– Verzögerungen unter keinen Umständen– Ergebnisse sind nutzlos wenn zu spät – katastrophale Störungen bei verpassen Deadlines– unendlich hohe Kosten für verpasste Deadlines
Echtzeitbetriebssysteme - Gregor Schräder
6
Einsatzgebiete von RTOSEinsatzgebiete von RTOS
„Weiche“ Echtzeit– digitale Telefonanlage – multimediale Anwendungen – Steuerung unkritischer chemischer Prozesse – Verkaufsautomat – Router und Switches
„Harte“ Echtzeit– Steuerung eines Kernreaktors– Steuerung kritischer chemischer Prozesse– Antiblockiersystem– Überwachungssysteme auf einer Intensivstation– Digitalsteuerung im Airbus Flugzeug
Echtzeitbetriebssysteme - Gregor Schräder
7
ÜberblickÜberblick
Was ist ein Echtzeitbetriebssystem?Weiche - Harte EchtzeitEinsatzgebieteAufgaben eines BetriebssystemsAufbau eines BetriebssystemsBeispiele & Ausblick
Echtzeitbetriebssysteme - Gregor Schräder
8
Aufgaben eines BetriebssystemsAufgaben eines Betriebssystems
Hardware
Betriebssystem
Software Software Software
I/O-VerwaltungTask-
verwaltungInterrupts
Speicher-verwaltung
SoftwareSoftware
Ha
rdw
are
ab
stra
ktio
n
Schnittstellen
Echtzeitbetriebssysteme - Gregor Schräder
9
POSIX StandardPOSIX Standard
Portable Operating System Interface– Portabilität von Applikationen
– eindeutige Schnittstellen
– POSIX konformer Code auf allen POSIX Betriebssystem compilierbar
IEEE 1003.1b Echtzeit & I/O Erweiterungen– Interprocess communiation - Process memory locking
– Timers - Real-time signal extensions
– Priority scheduling - Synchronized I /O
– Shared memory - Asynchronous I/O
Echtzeitbetriebssysteme - Gregor Schräder
10
POSIX StandardPOSIX Standard
Beispiele
int timer_delete
(
timer_t timerid
)
sched_setprogram
(
pit_t tid,
const struct sched_param * param
)
Echtzeitbetriebssysteme - Gregor Schräder
11
I/O-VerwaltungI/O-Verwaltung
Synchronisationsmechanismen– Polling
– Busy-Waiting
– Handshaking
Interrupts– Interfacebaustein
Beispiel:– Temperatursensor
Echtzeitbetriebssysteme - Gregor Schräder
12
Task-EinordnungTask-Einordnung
Eine Task (Prozess) ist:– Träger der Aktivität
– die kleinste planbare Einheit
– erfüllt eine von Programm spezifizierte Funktion
verschiedene Taskzustände
Zustandsübergänge werden durch Scheduler ausgelöst
Echtzeitbetriebssysteme - Gregor Schräder
13
Task ZuständeTask Zustände
Einfache, nicht unterbrechbare Tasks
bereit
deaktiviert
aus-führend
aktivieren
start
beenden
deaktiviert
bereit
aus-führend
deaktiviert
Einfache, nicht unterbrechbare Tasks
Echtzeitbetriebssysteme - Gregor Schräder
14
Einfache, unterbrechbare Tasks
Task ZuständeTask Zustände
Einfache, unterbrechbare Tasks
bereit
deaktiviert
aus-führend
aktivieren
start
beenden
unter-brechen
deaktiviert
bereit
aus-führend
bereit
aus-führend
deaktiviert
Echtzeitbetriebssysteme - Gregor Schräder
15
ProzessA
ProzessA
ProzessA
ProzessA
ProzessablaufplanungProzessablaufplanung
0
5
10
Prio
rität
ProzessB
ProzessC
ProzessD
ProzessE
ProzessF
ProzessD
ProzessB
ProzessC
ProzessB
ProzessC
Echtzeitbetriebssysteme - Gregor Schräder
16
ÜberblickÜberblick
Was ist ein Echtzeitbetriebssystem?Weiche - Harte EchtzeitEinsatzgebieteAufgaben eines BetriebssystemsAufbau eines BetriebssystemsBeispiele & Ausblick
Echtzeitbetriebssysteme - Gregor Schräder
17
Monolithischer AufbauMonolithischer Aufbau
Def: feste Einheit bildend (Duden)gekennzeichnet durch:
– keine erkennbare Struktur– nicht multitaskingfähig– jede Prozedur darf jede andere aufrufen
Nachteile:– schlecht anpassbar und wartbar– fehleranfällig
Beispiele:– OS/360 (IBM, 1964)– DOS
Echtzeitbetriebssysteme - Gregor Schräder
18
Heutige BetriebssystemeHeutige Betriebssysteme
hierarchisch strukturiert und modular aufgebaut
– taskorientiert– hierarchische Gliederung in Schichten (Schichtenmodell)– verschiedene Abstraktionsebenen
Vorteile gegenüber monolithischen Aufbau:
– linearer Verifikationsaufwand durch Hierarchie– Skalierbarkeit, Konfigurierbarkeit– Multitaskingfähigkeit
Echtzeitbetriebssysteme - Gregor Schräder
19
Die Mikrokernel-ArchitekturDie Mikrokernel-Architektur
BS-Kern enthält nur die absolut notwendigen Funktionen– Prozessverwaltung
– Interprozesskommunikation
– Synchronisation
Die restlichen Aufgaben in Erweiterungsmodulen
Echtzeitbetriebssysteme - Gregor Schräder
20
BeispieleBeispiele
Weitere RTOS im Internet:
Prioritätsbasierte Betriebssystemkerne für eingebettete Anwendungen– VRTX, VxWorks, OSEK, PXROS, RTkernel, OS9, RTEMS, Nucleus...
Echtzeiterweiterungen für “Timesharing” Betriebssysteme– RT-Unix, RT-Linux,...
Echtzeitbetriebssysteme in der Forschung– MARS, CHAOS, Spring, ARTS, MARUTI,...
http://www.dedicated-systems.com/encyc/buyersguide/rtos/Dir228.html
Echtzeitbetriebssysteme - Gregor Schräder
21
Zusammenfassung & AusblickZusammenfassung & Ausblick
Echtzeitbetriebssysteme– Garantierte Reaktionszeiten
– Sicherheit und Stabilität
– Kompaktheit
Aufgaben eines Betriebssystems– Hardwareabstraktion
– Bereitstellung von Ressourcen
Ausblick– Jetzt schon: RTOS in alle Bereichen des täglichen Lebens
– Umsetzung des POSIX Standards
Echtzeitbetriebssysteme - Gregor Schräder
22
EndeEnde
Vielen Dank für die Aufmerksamkeit