4.1 Eingebettete Betriebssysteme
229
Echtzeitkern
Standard-OS
Nicht-EchtzeitProzess 2
Nicht-EchtzeitProzess 1
Gerätetreiber
Prozess 2
EchtzeitProzess 1
Gerätetreiber
Abb. 4.3 Hybride Betriebssysteme
Standard-Betriebssystems schnell auch in eingebetteten Systemen verfügbar.
Probleme, die das Standard-Betriebssystem und dessen nicht-Echtzeit-Prozesse
betreffen, beeinflussen die Echtzeitprozesse nicht. Dies geht so weit, dass das
Standard-Betriebssystem sogar abstürzen kann und die Echtzeitprozesse davon
unbeeinflusst weiterlaufen. Ein Problem mit diesem Ansatz ist ebenfalls in Abb.
4.3 zu sehen: Gerätetreiber könnten Probleme verursachen, da das StandardBetriebssystem über eigene Treiber verfügt. Um Wechselwirkungen zwischen
Treibern für Echtzeitprozesse und denen für andere Prozesse zu vermeiden, kann
es notwendig sein, die Menge der Geräte in solche, die durch Echtzeitprozesse
behandelt werden und solche, die durch das Standard-Betriebssystem behandelt werden, zu unterteilen. Echtzeitprozesse können zudem keine Dienste des
Standard-Betriebssystems nutzen. Damit sind alle nützlichen Eigenschaften wie
ein Dateisystemzugriff und graphische Benutzerschnittstellen für diese Prozesse
normalerweise nicht verfügbar. Es existieren aber erste Ansätze, die Unterschiede zwischen den beiden Arten von Prozessen zu überbrücken, ohne die Echtzeitfähigkeiten zu verlieren. RT-Linux ist ein Beispiel für ein solches hybrides
Betriebssystem.
Nach Gupta [194] ist die Verwendung eines Standard-Betriebssystems „nicht der
richtige Ansatz, da zu viele grundlegende und unpassende Voraussetzungen existieren wie die Optimierung für den durchschnittlichen Fall (anstelle des worst
case), ... das Ignorieren der meisten oder der gesamten semantischen Informationen und unabhängiges Scheduling der CPU sowie Allokation von Ressourcen.”
Abhängigkeiten zwischen Prozessen kommen bei den meisten Anwendungen auf
Standard-Betriebssystemen tatsächlich sehr selten vor und werden von solchen
Systemen daher häufig ignoriert. Bei eingebetteten Systemen ist die Lage anders,
da Abhängigkeiten zwischen Prozessen die Regel sind und daher berücksichtigt
werden müssen. Dies ist jedoch nicht immer der Fall, wenn Erweiterungen von
Standard-Betriebssystemen zum Einsatz kommen. Zudem betrachten StandardBetriebssysteme Ressourcenzuteilung und Scheduling selten in Kombination. Integrierte Ressourcenzuteilung und Scheduling-Algorithmen sind aber notwendig,
um das Einhalten von Zeitbedingungen garantieren zu können.
• Einige Forschungssysteme versuchen, die oben beschriebenen Einschränkungen
zu vermeiden. Dazu zählen Melody [568] sowie (nach Gupta [194]) MARS,
Spring, MARUTI, Arts, Hartos und DARK.
Takada [523] nennt leichtgewichtigen Speicherschutz, zeitlichen Schutz von Rechenressourcen (um Prozesse davon abzuhalten, länger zu rechnen als ursprünglich
Précédent

- 249/485

Suivant