以下に示す比較表を使用して、長期スケジューラと短期スケジューラの違いについてもう少し説明しましょう。
内容:長期対短期スケジューラー
- 比較表
- 定義
- 主な違い
- 結論
比較表
比較基準 | 長期スケジューラ | 短期スケジューラ |
---|---|---|
基本 | ジョブプール/ジョブキューからプロセスをピックアップします。 | それはレディキューからプロセスを拾います。 |
周波数 | 長期スケジューラはそれほど頻繁にプロセスを選択しません。 | 短期スケジューラはより頻繁にプロセスを選択します。 |
コントロール | マルチプログラミングの程度を制御します。 | マルチプログラミングの程度を制御することはできません。 |
代替案 | あるいは、それはJob Schedulerと呼ばれます。 | あるいは、それはCPUスケジューラと呼ばれます。 |
重要 | 長期スケジューラはバッチシステムにありますが、タイムシェアリングシステムには存在する場合と存在しない場合があります。 | 短期スケジューラはバッチシステムにあり、タイムシェアリングシステムにも最低限存在します。 |
長期スケジューラの定義
システムに送信されたプロセスの数が、すぐに実行できる数よりも多い場合があります。 その後、そのような場合、プロセスは大容量記憶装置にスプールされ、そこで実行されます。 次に、長期スケジューラはこのスプールからジョブプールとも呼ばれるプロセスを選択し、それらをさらに実行するためにそれらをレディキューにロードします。
Job Schedulerとも呼ばれます 。 ジョブプールからプロセスをピックアップする長期スケジューラの頻度は、短期スケジューラと比較して少なくなります。
Long-Term Scheduler はマルチプログラミングの程度を制御します。これは、新しいプロセスの作成率がシステムを離れるプロセスの平均出発率と等しい場合は安定しています。 長期スケジューラは、プロセスがシステムを離れると実行されます。
Micro-Soft Windows、UnixなどのTime Sharing Systemのようないくつかのシステムでは、長周期スケジューラは存在しないか、または最小限しか存在しないようです 。
短期スケジューラの定義
短期スケジューラは、 CPUスケジューラとも呼ばれます 。 Short-Term Schedulerの目的は、実行準備ができているReady Queueからプロセスを選択し、その実行のためにCPUを割り当てることです。
短期スケジューラの実行は、長期スケジューラと比較して非常に頻繁です。 短期スケジューラでは、マルチプログラミングの程度に対する 制御が少なくなります。 短期スケジューラは、 タイムシェアリングシステムに 最低限存在しています 。
長期スケジューラと短期スケジューラの主な違い
- 長期スケジューラは、ジョブプールからプロセスを選択します。 一方、短期スケジューラはレディキューからプロセスを選択します。
- 短期スケジューラは、長期スケジューラと比較してより頻繁に実行されます。
- 長期スケジューラはマルチプログラミングの程度を制御しますが、短期スケジューリングではマルチプログラミングの程度を制御することはできません。
- 長期スケジュールはJob Schedulerとも呼ばれます。 一方、短期スケジュールは、CPUスケジューラとも呼ばれます。
- 長期スケジューラは、必ずバッチシステム内に存在し、タイムシェアリングシステム内に最低限存在してもしなくてもかまいません。 一方、短期スケジューラはバッチシステムに存在し、タイムシェアリングシステムにも最小限しか存在しません。
結論:
長期スケジューラおよび短期スケジューラは、スケジューリング目的にも同様に重要です。 一方(長期スケジューラ)がメモリからレディキューにプロセスをロードし、もう一方(短期スケジューラ)がレディキュー内のCPUにCPUを割り当てます。