Der Begriff Multilevel Feedback Queue bezeichnet einen dynamischen Prioritätsscheduling-Algorithmus. Bei diesem Verfahren gibt es mehrere Warteschlangen (engl.
Der Begriff Multilevel Feedback Queue bezeichnet einen dynamischen Prioritätsscheduling-Algorithmus. Bei diesem Verfahren gibt es mehrere Warteschlangen (engl. queue) unterschiedlicher Priorität. Prozesse werden in Abhängigkeit von ihrem bisherigen Ressourcenverbrauch dynamisch in eine dieser Warteschlangen eingeordnet.[1]
Es werden mehrere FIFO-Warteschlangen benutzt.[2] Die Abarbeitung erfolgt so:
Im Multilevel-Feedback-Queue-Verfahren hat ein Prozess nur einmal die Möglichkeit, in einer bestimmten Warteschlange komplett abgearbeitet zu werden, bevor er in eine niedrigere Warteschlange gedrängt wird.
Der Scheduler teilt den Prozessor dem Prozess am Anfang immer der obersten nicht leeren Warteschlange zu.
Kurze Jobs werden bevorzugt, da ihnen höhere Prioritäten zugewiesen werden. Jobs mit vielen Ein- und Ausgabeoperationen werden bevorzugt, da sie nach einer freiwilligen Abgabe des Prozessors wieder in die ursprüngliche Warteliste eingeordnet werden, ihre Priorität also beibehalten. Neue Prozesse werden schnell eingestuft und in eine Prioritätsklasse eingeordnet. Es sind keine Heuristiken (z. B. zur Abschätzung der Laufzeit des Prozesses) zur Einstufung notwendig.
Wenn immer neue Prozesse nachkommen, können rechenintensive Prozesse in der niedrigsten Prioritätsklasse „verhungern“ (engl. starvation), d. h., sie werden niemals bis zum Ende ausgeführt. Eine Prioritätsinversion kann auftreten.
Informasi ini disarikan dari Wikipedia dan disajikan kembali untuk tujuan edukasi. Konten tersedia di bawah lisensi CC BY-SA 3.0. Kami tidak bertanggung jawab atas ketidakakuratan data yang bersumber dari kontribusi publik tersebut.