Fortgeschrittene Fertigungstechniken
Die Rolle von Scheduling-Algorithmen: Vergleichen von Fcfs, Sjf und Round Robin mit Berechnungen
Table of Contents
Planungsalgorithmen sind in Betriebssystemen unerlässlich, um die Prozessausführung effizient zu verwalten. Sie bestimmen die Reihenfolge, in der Prozesse CPU-Zeit zugewiesen werden, was sich auf die Systemleistung und -reaktionsfähigkeit auswirkt. Dieser Artikel vergleicht drei gängige Algorithmen: First-Come, First-Served (FCFS), Shortest Job First (SJF) und Round Robin mit Berechnungen, um ihre Unterschiede zu veranschaulichen.
First-Come, First-Served (FCFS)
FCFS plant Prozesse in der Reihenfolge, in der sie ankommen. Es ist einfach, kann aber zu langen Wartezeiten für kürzere Prozesse führen, die als "Konvoi-Effekt" bezeichnet werden.
Beispiel: Prozesse mit Burstzeiten 5, 3 und 8 kommen sequentiell an. Das Gantt-Diagramm zeigt die Ausführungsreihenfolge und Berechnungen für Warte- und Durchlaufzeiten.
Berechnungen:
- Prozess 1: Wartezeit = 0, Bearbeitungszeit = 5
- Prozess 2: Wartezeit = 5, Bearbeitungszeit = 8
- Prozess 3: Wartezeit = 8, Bearbeitungszeit = 16
Shortest Job First (SJF)
SJF wählt den Prozess mit der kleinsten Burstzeit als nächstes aus. Es minimiert die durchschnittliche Wartezeit, erfordert jedoch vorherige Kenntnis der Prozessdauern.
Mit den gleichen Prozessen plant SJF sie als 3, 5, dann 8 Einheiten, was zu unterschiedlichen Wartezeiten führt.
Berechnungen:
- Prozess 2: Wartezeit = 0, Bearbeitungszeit = 3
- Prozess 1: Wartezeit = 3, Bearbeitungszeit = 8
- Prozess 3: Wartezeit = 8, Bearbeitungszeit = 16
Round Robin Scheduling
Round Robin weist jedem Prozess eine feste Zeitscheibe oder ein Quantum zu, wobei die Prozesse bis zum Abschluss durchgearbeitet werden, um Fairness und Reaktionsfähigkeit zu fördern.
Unter der Annahme eines Quantens von 2 Einheiten werden die Prozesse in Zyklen geplant, und die Berechnungen basieren auf der Gesamtausführungszeit und den Wartezeiten.
Beispielhafte Berechnungen für Prozessabschlusszeiten und Wartezeiten sind wie folgt:
- Prozess 1: Wartezeit = 4, Bearbeitungszeit = 9
- Prozess 2: Wartezeit = 2, Bearbeitungszeit = 5
- Prozess 3: Wartezeit = 8, Bearbeitungszeit = 16