Scheduling-Grundlagen

Auf einen Blick

Scheduling ist die Zuteilung von Ressourcen zu Prozessen — bei Multi-Prozess-Systemen mit begrenzten Ressourcen stets notwendig. Kategorisierbar nach Zeitskala, Zielsetzung und Zuteilungsverfahren.

Definition

Unter Scheduling versteht man die Zuteilung von Ressourcen zu Prozessen.

Es ist eine spezielle Form der Ressourcen-Vergabe und „Synchronisation": Die Ressource ist die CPU, und der Scheduler greift von außen in die Reihenfolge ein. Je nach Algorithmus wird dabei eine der Deadlock-Bedingungen ausgeschaltet.

Kategorisierung

1. Zeitskala

2. Zielsetzung (oft „Systemart" genannt)

  • optimale Antwortzeit · optimale Fairness · optimaler Durchsatz · optimale Auslastung

(Diese Ziele stehen teils im Konflikt — niedrige Antwortzeit vs. hoher Durchsatz.)

3. Verfahren der Zuteilung

  • präemptiv — aktive Unterbrechung des laufenden Prozesses (per Timer-Interrupt)
  • nicht-präemptiv — nur freiwillige Rückgabe der CPU durch den Prozess

Überblick der Verfahren

Verfahrenpräemptiv?typisch für
FCFSneinBatch
SJFnein (auch präemptiv möglich)Batch
Round Robinjainteraktiv
MFBQjaklassisches Unix

Verwandte Notes

FCFS & SJF · Round Robin · Multilevel Feedback Queue · Festplatten-Scheduling · Prozess-Zustandsmodell · Prozesskontext & Kontextwechsel

← Kapitelübersicht


⬅️ Kapitelübersicht · FCFS & SJF ➡️

Built with LogoFlowershow