Was ist die größte Schwierigkeit, die ein Programmierer beim Schreiben eines Betriebssystems für eine Echtzeitumgebung überwinden muss?

1 Antworten


  • Ein Echtzeitbetriebssystem muss "ereignisgesteuert" sein und in der Lage sein, bestimmte Aufgaben sehr zeitnah auszuführen.
    Die meisten echten Echtzeit-Betriebssysteme verwenden Interrupts, um Ereignisse zu verarbeiten, sobald sie auftreten, wie beispielsweise eine zeitkritische Eingangsnachricht von einem seriellen Port oder ein digitales E/A-Ereignis von einer peripheren Hardware.
    Als nächstes sollte eine Priorisierung vorgenommen werden, was bedeutet, dass ein Prozess zeitkritisch sein kann, wie die Steuerung der Stäbe in einem Kernreaktor, aber andere Prozesse könnten etwas weniger kritisch sein, wie das Dimmen der Flurbeleuchtung in der Reaktoranlage danach Std.

    Drittens muss ein Mechanismus für "Multitasking" vorhanden sein, dh der Computer muss in der Lage sein, zwischen mehreren aktiven Prozessen umzuschalten. Einige Betriebssysteme erstellen für jeden Prozess einen Prozess-"Stapel", und wenn ein Prozess mit hoher Priorität aktiviert werden soll, um ein Ereignis zu behandeln, schaltet das Betriebssystem einfach die Steuerung auf den Prozess mit höherer Priorität um, indem die aktuellen Daten vom Prozess-Stapel geladen werden. Ein echtes Echtzeit-Betriebssystem kann dies in nur wenigen Taktstrichen tun.

Schreibe deine Antwort

Ihre Antwort erscheint nach der Moderation appear