Multilevel Feedback Queue

Auf einen Blick

Der klassische Unix-Ansatz: mehrere Queues mit unterschiedlichen Prioritäten. I/O-bound-Prozesse bleiben oben (reaktionsschnell), CPU-bound-Prozesse sinken ab. Innerhalb einer Queue gilt RR/FCFS.

Idee

  • Das OS setzt eine feste Menge von Queues mit unterschiedlichen Prioritäten auf:
    • höherwertige Queue für I/O-bound-Prozesse (kurzes Quantum)
    • geringerwertige Queue für CPU-bound-Prozesse (langes Quantum)
  • Jeder Prozess wird einer Queue zugeordnet, kann die Queue aber wechseln (das „Feedback").
  • Scheduling: in der Reihenfolge der Queues (höchste nicht-leere zuerst), darin nach RR bzw. FCFS.

Interaktiv

Beobachte, wie ein CPU-Fresser nach unten wandert, während ein I/O-Prozess oben bleibt:

mfbq.html

Das Feedback-Prinzip

  • Verbraucht ein Prozess sein ganzes Quantum, ohne zu blockieren → er gilt als CPU-bound und wird abgewertet (sinkt eine Ebene).
  • Gibt ein Prozess früh ab (wartet auf I/O) → er bleibt oben und gilt als interaktiv.

So werden interaktive Prozesse automatisch bevorzugt, ohne dass man die Job-Art vorher kennen muss (anders als bei SJF).

Schwäche

Das Verfahren muss mitunter alle Prozesse betrachten → Aufwand O(n). Moderne Scheduler (z.B. Linux CFS, O(1)-Scheduler) lösen das effizienter.

Verwandte Notes

Scheduling-Grundlagen · Round Robin · FCFS & SJF · Architektur von Linux & Windows

← Kapitelübersicht


⬅️ Round Robin · Festplatten-Scheduling ➡️

Built with LogoFlowershow