Der FreeRTOS-Kernel-Scheduler - FreeRTOS

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Der FreeRTOS-Kernel-Scheduler

Eine Embedded-Anwendung, die RTOS verwendet, kann als eine Reihe von unabhängigen Tasks strukturiert werden. Jeder Task wird in einem eigenen Kontext ausgeführt, ohne Abhängigkeit von anderen Tasks. In der Anwendung wird immer nur ein Task gleichzeitig ausgeführt. Der Echtzeit-RTOS-Scheduler bestimmt, wann die einzelnen Tasks ausgeführt werden sollen. Jeder Task ist mit einem eigenen Stack ausgestattet. Wenn ein Task ausgelagert wird, damit ein anderer Task ausgeführt werden kann, wird der Ausführungskontext des Tasks im Task-Stack gespeichert, sodass er wiederhergestellt werden kann, wenn derselbe Task später wieder zur Ausführung geladen wird.

Um ein deterministisches Echtzeitverhalten zu ermöglichen, ermöglicht der FreeRTOS Task-Scheduler, dass Tasks strikte Prioritäten zugewiesen werden. RTOS stellt sicher, dass der ausführbare Task mit der höchsten Priorität Verarbeitungszeit erhält. Dies erfordert die Aufteilung der Verarbeitungszeit zwischen Tasks mit gleicher Priorität, wenn diese gleichzeitig ausgeführt werden können. FreeRTOS erstellt außerdem einen Leerlauf-Task, der nur ausgeführt wird, wenn keine anderen Tasks zur Ausführung bereit sind.