Einleitung —
Echtzeitsysteme sind nicht „fair” —
Unterbrechbarer Kernel? —
Vermeidung von Prioritätsinversion —
Zeitpartitionierung —
Adaptive Zeitpartitionierung —
Ein zweiter Kernel —
Das OS erweitern und anpassen —
Eine strategische Entscheidung
[+]
Einleitung
Benötigt man für übliche Embedded-Projekte wirklich noch ein Echtzeit-betriebssystem? Angesichts der Leistung moderner Prozessoren und der Verfügbarkeit von Echtzeit-Versionen bzw. -Erweiterungen für Linux, Windows ...
Echtzeitsysteme sind nicht „fair”
Die Forderung nach „harter“ Echtzeit hat in der Embedded-Industrie nicht an Bedeutung verloren. Aber was genau unterscheidet ein „echtes“ RTOS von einem universellen Standard-OS? Und wie sind die heute verfügbaren ...
Unterbrechbarer Kernel?
Die meisten Standard-Betriebssysteme haben keinen unterbrechbaren OS-Kernel. Das bedeutet: Selbst ein wichtiger Thread mit hoher Priorität kann einen gerade laufenden Systemaufruf (Kernel Call) nicht unterbrechen, sondern muss ...
Vermeidung von Prioritätsinversion
Bei vielen Betriebssystemen kann ein Thread mit niedriger Priorität einen wichtigeren Thread unbeabsichtigt von der Zuteilung von CPU-Zeit abschneiden – ein Effekt, der als Prioritätsinversion bekannt ist. Tritt eine zeitlich unbegrenzte ...
Zeitpartitionierung
In vielen Systemen ist die garantierte Verfügbarkeit von Ressourcen unabdingbar. Wenn einem kritischen Subsystem beispielsweise die CPU entzogen wird, ist dessen Funktionalität für den Anwender plötzlich nicht mehr ...
Adaptive Zeitpartitionierung
Ein weiteres Zuteilungsverfahren, „Adaptive Zeitpartitionierung“ genannt, vermeidet die Nachteile der festen Zuteilung durch einen dynamischen Algorithmus. Wie beim statischen Partitionieren kann man hier CPU-Zeit für ...
Ein zweiter Kernel
Standard-Betriebssysteme wie Windows, Linux und verschiedene UNIX-Systeme verfügen üblicherweise über keinen der bislang diskutierten Mechanismen . Um diese Lücke zu schließen, haben verschiedene Anbieter einige ...
Das OS erweitern und anpassen
Bei allen Nachteilen bezgl. deterministischer Umgebungen haben Standard-Betriebssysteme natürlich auch ihre Vorteile: Support für gängige und überall verwendete APIs beispielsweise. Für Linux spricht zudem das ...
Eine strategische Entscheidung
Ein RTOS verhilft komplexen Applikationen zu einem berechenbaren und zuverlässigen Verhalten. Die präzise Kontrolle des Timings durch ein RTOS ist mit einem Standard-OS unerreichbar (wenn sich ein auf einem Standard-OS ...