Unterschied zwischen Scheduler und Dispatcher

Inhaltsverzeichnis:

Unterschied zwischen Scheduler und Dispatcher
Unterschied zwischen Scheduler und Dispatcher

Video: Unterschied zwischen Scheduler und Dispatcher

Video: Unterschied zwischen Scheduler und Dispatcher
Video: Betriebssysteme #8- Scheduling Überblick | Preemptives vs. Non-preemtives Scheduling | deutsch 2024, November
Anonim

Hauptunterschied – Scheduler vs. Dispatcher

Scheduler und Dispatcher sind mit der Prozessplanung eines Betriebssystems verbunden. Der Hauptunterschied zwischen Scheduler und Dispatcher besteht darin, dass der Scheduler aus mehreren auszuführenden Prozessen einen Prozess auswählt, während der Dispatcher die CPU für den vom Scheduler ausgewählten Prozess zuweist.

In einem Computersystem laufen mehrere Prozesse. Scheduling ist der Prozess des Betriebssystems, um zu entscheiden, welcher Prozess der CPU für die Ausführung mehrerer Prozesse zugewiesen werden soll.

Was ist der Planer?

Es gibt drei Arten von Schedulern in einem Betriebssystem. Sie sind der langfristige Planer, der kurzfristige Planer und der mittelfristige Planer. Der Langzeit-Scheduler wird auch als Job-Scheduler bezeichnet. In dem Computersystem gibt es eine Anzahl von Prozessen, die auf ihre Ausführung warten. Diese Prozesse werden zur späteren Ausführung in den sekundären Speicher oder die Auftragswarteschlange gestellt. Das Ziel des Langzeitplaners ist es, einen Prozess aus der Jobwarteschlange auszuwählen und diesen Prozess in die Bereitschaftswarteschlange im Hauptspeicher zu bringen.

Der Short Term Scheduler ist auch als CPU-Scheduler bekannt. Die Aufgabe des kurzfristigen Schedulers besteht darin, einen Prozess in der Bereitschaftswarteschlange auszuwählen, der der CPU zugewiesen werden soll. Der kurzfristige Planer sollte einen Prozess aus der Bereitschaftswarteschlange auswählen, während der vorherige Prozess in den Wartezustand übergeht. Es sollte schnell sein, sonst wird CPU-Zeit verschwendet.

Unterschied zwischen Scheduler und Dispatcher
Unterschied zwischen Scheduler und Dispatcher

Abbildung 01: Ablaufplanung

Der ausführende Prozess erfordert möglicherweise eine E/A-Operation. Der Prozess geht also in den Wartezustand. Dieser Prozess soll ausgesetzt werden. Für eine maximale CPU-Auslastung sollte ein anderer Prozess ausgeführt werden. Der angeh altene Prozess wird zurück in den sekundären Speicher übertragen. Nach einiger Zeit kann der übertragene Prozess in den Hauptspeicher zurückkehren und die Ausführung dort fortsetzen, wo er beendet wurde. Das Übertragen des angeh altenen Prozesses in den sekundären Speicher wird als Auslagern bezeichnet. Das Zurückbringen des Prozesses in den Hauptspeicher wird als Einlagern bezeichnet. Dieses Ein- und Auslagern wird vom Medium-Scheduler durchgeführt.

Was ist Dispatcher?

Wenn der kurzfristige Scheduler aus der Bereitschaftswarteschlange auswählt, führt der Dispatcher die Aufgabe aus, den ausgewählten Prozess der CPU zuzuweisen. Ein laufender Prozess geht in den Wartezustand für IO-Operationen usw. Dann wird die CPU einem anderen Prozess zugewiesen. Dieses Umsch alten der CPU von einem Prozess zum anderen wird als Kontextumsch alten bezeichnet. Ein Dispatcher führt verschiedene Aufgaben aus, einschließlich Kontextwechsel, Einrichten von Benutzerregistern und Speicherzuordnung. Diese sind erforderlich, damit der Prozess die CPU-Steuerung ausführen und an diesen Prozess übertragen kann. Beim Versenden wechselt der Prozess vom Bereitschaftszustand in den Ausführungszustand.

Manchmal wird der Dispatcher als Teil des Kurzzeitplaners betrachtet, also wird die gesamte Einheit als Kurzzeitplaner bezeichnet. In diesem Szenario besteht die Aufgabe des kurzfristigen Planers darin, einen Prozess aus der Bereitschaftswarteschlange auszuwählen und auch die CPU für diesen Prozess zuzuweisen.

Wie ist die Beziehung zwischen Planer und Dispatcher?

Der Dispatcher ordnet den ausgewählten Prozess durch den kurzfristigen Scheduler der CPU zu

Was ist der Unterschied zwischen Scheduler und Dispatcher?

Scheduler vs. Dispatcher

Ein Scheduler ist eine spezielle Systemsoftware, die die Prozessplanung übernimmt, indem sie den auszuführenden Prozess auswählt. Der Dispatcher ist das Modul, das dem vom kurzfristigen Scheduler ausgewählten Prozess die Kontrolle über die CPU gibt.
Typen

Es gibt drei Arten von Schedulern, bekannt als;

  • Langzeitplaner,
  • Kurzzeitplaner
  • mittelfristiger Planer.
Es gibt keine Kategorisierung für einen Dispatcher.
Hauptaufgaben

Der Langzeitplaner wählt den Prozess aus der Jobwarteschlange aus und bringt ihn in die Bereitschaftswarteschlange.

Der Short Term Scheduler wählt einen Prozess in der Bereitschaftswarteschlange aus.

Der Medium-Scheduler führt den Swap-In, Swap-Out-Prozess durch.

Der Dispatcher weist die CPU dem vom kurzfristigen Scheduler ausgewählten Prozess zu.

Zusammenfassung – Scheduler vs. Dispatcher

Scheduler und Dispatcher werden beim Prozess-Scheduling eines Betriebssystems verwendet. Der Unterschied zwischen Scheduler und Dispatcher besteht darin, dass der Scheduler aus mehreren auszuführenden Prozessen einen Prozess auswählt, während der Dispatcher die CPU für den vom Scheduler ausgewählten Prozess zuweist.

Empfohlen: