Beschreiben Sie die Funktionsweise des CPU-Schedulers Beschreiben Sie auch den CPU-E/A-Burst-Zyklus?

2 Antworten


  • Das Betriebssystem muss einen der Prozesse aus der Bereitschaftswarteschlange auswählen, um sie auszuführen, wenn die CPU inaktiv wird. Zur Auswahl eines Prozesses aus der Warteschlange bereit verwendet das Betriebssystem den CPU-Scheduler. Eine bereite Warteschlange kann auf einem beliebigen Algorithmus wie FIFO, Prioritätswarteschlange oder einfach einer ungeordneten verknüpften Liste basieren.

    Ein Prozess, der zwischen CPU-Burst und E/A-Burst wechselt. Tatsächlich beginnt ein Prozess mit einem CPU-Burst, gefolgt von einem I/O-Burst, dann einem weiteren CPU-Burst und so weiter. Dieser gesamte Prozess ist als CPU-I/O-Burst-Zyklus bekannt. Der letzte CPU-Burst endet nicht mit einem I/O-Burst, sondern mit einer Systemanforderung. Laden von Speicherdaten, Hinzufügen von Speicherdaten, Lesen aus einer Datei, Speichern von Inkrementen, Schreiben in eine Datei, Löschen von Daten aus einer Datei, Hinzufügen von Inkrementen und andere Operationen wie diese werden als CPU-Burst bezeichnet.

    E/A-Burst enthält beliebige Ein- und Ausgänge. Der gesamte Prozess vom Beginn eines CPU-Bursts bis zum Ende mit der Systemanforderung zum Beenden der Ausführung ist als CPU-I/O-Burst-Zyklus bekannt. Viele kurze CPU-Bursts, die ein E/A-gebundenes Programm haben kann. In ähnlicher Weise kann ein CPU-gebundenes Programm einige lange CPU-Bursts haben.
  • Die Auswahl des nächsten Jobs, der auf der CPU ausgeführt wird, gehört dem Kurzzeit- oder CPU-Scheduler. Der CPU-Scheduler kann nur aus den Jobs auswählen, die sich bereits im Speicher befinden und einsatzbereit sind. Der Scheduler arbeitet mit dem Interrupt-System zusammen.
    • Der Scheduler weist die CPU zu, Berechnungen im Namen eines bestimmten Prozesses oder Threads innerhalb eines Prozesses durchzuführen.

    • CPU kann durch einen Interrupt von ihrem aktuellen Prozess "ausgeliehen" werden. Es wird von externen Geräten und nicht vom Scheduler gesteuert. Interrupts können kurzzeitig deaktiviert werden.
    • Wenn ein Prozess oder Thread eine E/A-Übertragung anfordert, kann die CPU normalerweise nicht verwendet werden, bis die Übertragung abgeschlossen ist. Dies bedeutet, dass der Scheduler einen neuen Prozess oder einen neuen Thread innerhalb desselben Prozesses auswählen muss, um die CPU zu verwenden.
    • Der Prozess oder Thread, der die E/A angefordert hat, kann die CPU wieder verwenden, wenn die E/A-Übertragung abgeschlossen ist.

    CPU-I/O-Burst-Zyklus
    Die Ausführung eines Prozesses besteht aus einem Wechsel von CPU-Bursts und I/O-Bursts. Ein Prozess beginnt und endet mit einem CPU-Burst. Dazwischen wird die CPU-Aktivität ausgesetzt, wenn eine E/A-Operation erforderlich ist.
    • Wenn die CPU-Bursts im Vergleich zu den I/O-Bursts relativ kurz sind, wird der Prozess als I/O-gebunden bezeichnet. Eine typische Datenverarbeitungsaufgabe umfasst beispielsweise das Lesen eines Datensatzes, einige minimale Berechnungen und das Schreiben eines Datensatzes.
    • Wenn CPU-Bursts im Vergleich zu E/A-Bursts relativ lang sind, wird ein Prozess als CPU-gebunden bezeichnet. Eine Zahlenverarbeitungsaufgabe beinhaltet einen E/A-Burst zum Lesen von Parametern. Zum Schreiben von Ergebnissen sind ein sehr langer CPU-Burst und ein weiterer I/O-Burst erforderlich.

Schreibe deine Antwort

Ihre Antwort erscheint nach der Moderation appear