Embedded Systems und Firmware

Welche Aussage zur „Superloop“-Struktur, wie sie in Programmen für Mikrocontroller ohne Betriebssystem häufig vorkommt, ist korrekt?

  1. AIn einer Endlosschleife in main werden die Aufgaben nacheinander aufgerufen, und Dringendes wird per Interrupt erledigt
  2. BFür jede Aufgabe wird ein eigener Prozess erzeugt, und das Betriebssystem schaltet um
  3. CNach jeder beendeten Aufgabe wird der Mikrocontroller neu gestartet
Antwort und Erläuterung anzeigen

Antwort: A. In einer Endlosschleife in main werden die Aufgaben nacheinander aufgerufen, und Dringendes wird per Interrupt erledigt

In einer Superloop werden nach der Initialisierung in „while (1)“ Aufgaben wie Sensor lesen, berechnen und anzeigen nacheinander aufgerufen. Zeitkritische Aufgaben laufen per Interrupt und informieren die Schleife über Flags. Vorteile sind, dass kein Betriebssystem nötig ist, wenig Speicher gebraucht wird und der Ablauf leicht nachvollziehbar ist. Dauert jedoch eine Aufgabe lange, verzögern sich alle anderen, weshalb bei wachsender Komplexität ein RTOS in Betracht gezogen wird.

Dieses Thema üben Zur Themenseite

Weitere Fragen zu Embedded Systems und Firmware

  1. Was ist der Hauptzweck des Einsatzes eines RTOS (Echtzeitbetriebssystem) in Embedded-Geräten?
  2. 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?
  3. Welche Aussage zur Prioritätsumkehr (Priority Inversion) bei einem RTOS ist korrekt?
  4. Welche Aussage zur „Prioritätsvererbung“, die Prioritätsumkehr verhindern soll, ist korrekt?
  5. Welchen Vorteil hat es, bei einem RTOS Daten vom Sensor-Lese-Task über eine Queue (Message Queue) an den Anzeige-Task zu übergeben?

Vergleiche zu diesem Thema