Embedded Systems und Firmware

Bei einem präemptiven RTOS erhält ein Task höherer Priorität während der Ausführung eines Tasks niedrigerer Priorität die erwarteten Daten und wird ausführbar. Was geschieht im Allgemeinen?

  1. ADer Task höherer Priorität wartet, bis der niedrigere von selbst endet
  2. BBeide Tasks halten an, und der Mikrocontroller startet neu
  3. CDer niedrigere Task wird mittendrin angehalten, und es wird sofort auf den höheren umgeschaltet
Antwort und Erläuterung anzeigen

Antwort: C. Der niedrigere Task wird mittendrin angehalten, und es wird sofort auf den höheren umgeschaltet

Bei einem präemptiven RTOS speichert der Kernel, sobald ein Task höherer Priorität z. B. durch einen Interrupt ausführbar wird, den Zustand des laufenden niedrigeren Tasks, hält ihn an und schaltet auf den höheren um. Endet der höhere Task oder geht er in den Wartezustand, setzt der niedrigere an der Unterbrechungsstelle fort. Dadurch lässt sich die Antwortzeit hochpriorer Verarbeitung kurz und vorhersagbar halten.

Dieses Thema üben Zur Themenseite

Weitere Fragen zu Embedded Systems und Firmware

  1. Welche Aussage zur Prioritätsumkehr (Priority Inversion) bei einem RTOS ist korrekt?
  2. Welche Aussage zur „Prioritätsvererbung“, die Prioritätsumkehr verhindern soll, ist korrekt?
  3. Welchen Vorteil hat es, bei einem RTOS Daten vom Sensor-Lese-Task über eine Queue (Message Queue) an den Anzeige-Task zu übergeben?
  4. Welche Aussage zum Unterschied zwischen Hard Real-Time und Soft Real-Time ist korrekt?
  5. Warum ist es ungünstig, das Zurücksetzen (Kicken) des Watchdog-Timers bedingungslos im 1-ms-Timer-Interrupt-Handler auszuführen?

Vergleiche zu diesem Thema