長期スケジューラと短期スケジューラの大きな違いは、長期スケジューラがジョブキューからプロセスを選択してレディキューに入れるのに対し、短期スケジューラはレディキューから次に実行するプロセスを選択する点です。
プロセスとは、実行中のプログラムのことである。
最近のコンピュータシステムでは、複数のプロセスが存在する。
スケジューリングとは、複数のプロセスから1つのプロセスを選択し、CPUに割り当てて実行させる仕組みのことである。
この作業を支援するのがスケジューラです。
スケジューラには大きく分けて、長期スケジューラと短期スケジューラの2種類があります。
全体として、長期スケジューラはマルチプログラミング性を維持し、短期スケジューラはシステム性能を向上させることができる。
ロングタームスケジューラとは?
長期スケジューラは、ジョブスケジューラとも呼ばれる。
コンピュータの中には、実行を待っているプロセスが多数存在する。
これらのプロセスはジョブキューの中にある。
長期スケジューラは、ジョブキューや二次記憶装置からプロセスを選択し、そのプロセスを主記憶装置のレディキューに移動して実行させる。
通常、長期スケジューラは、2次記憶からCPUバウンドとIOバウンドのプロセスをバランスよく選択する。
さらに、マルチプログラミングの度合いとは、レディ状態にできるプロセスの最大数のことである。
長期スケジューラは、この多重プログラミングの度合いを制御するのに役立つ。
ショートタームスケジューラとは?
Short Term Schedulerは、CPUスケジューラとも呼ばれる。
CPUが実行するプロセスをレディキューから選択する。
短期スケジューラがレディキューからプロセスを選択すると、現在実行中のプロセスは待機状態になる。
通常、短期スケジューラはCPUの時間の浪費を避けるために高速に動作する。
短期スケジューラがプロセスを選択した後、ディスパッチャは選択されたプロセスをCPUに割り当てて実行させる。
つまり、実際にCPUにプロセスを割り当てて実行させます。
上記2つのプロセスの他に、中期スケジューラというスケジューラがあります。
主記憶が一杯になると、主記憶から二次記憶へプロセスをスワップアウトする。
メインメモリに空きができると、先にスワップアウトしたプロセスをメインメモリに戻して実行する。
そして、プロセスは一時停止していたところから実行される。
ロングタームスケジューラとショートタームスケジューラの違い
定義
長期スケジューラとは、ジョブキューからプロセスを選択し、メインメモリにロードして実行するOSのスケジューラです。
これに対し、短期スケジューラは、複数のプロセスの中からCPUが実行するプロセスを選択するOSのスケジューラです。
したがって、ここが長期スケジューラと短期スケジューラの大きな違いとなる。
同義語
長期スケジューラがジョブスケジューラとも呼ばれるのに対し、短期スケジューラはCPUスケジューラと呼ばれる。
機能性
また、長期スケジューラと短期スケジューラのもう一つの重要な違 いは、機能性です。
それは、長期スケジューラはジョブキューからプロセスを選択し、レディキューに入れるという点です。
一方、短期スケジューラはレディキューにあるプロセスをCPUが実行するように選択する。
速度
さらに、長期スケジューラと短期スケジューラのもう一つの違いは、速度です。
長期スケジューラは短期スケジューラより遅い。
マルチプログラミング
さらに、長期スケジューラは、多重プログラミングの程度を制御するが、短期スケジューラは、多重プログラミングの程度を最小に制御する。
動作周波数
運用頻度も長期スケジューラと短期スケジューラの違いです。
長期スケジューラは短期スケジューラより動作頻度が低い。
結論
スケジューラとは、OSの特殊なシステムソフトウェアです。
スケジューラはOSのシステムソフトウェアの一つであり、様々な方法でプロセスをスケジューリングすることができる。
スケジューラには大きく分けて長期スケジューラと短期スケジューラがあります。
長期スケジューラと短期スケジューラの主な違いは、長期スケジューラはジョブキューからプロセスを選択し、そのプロセスをレディキューに入れるのに対し、短期スケジューラはレディキューから次に実行するプロセスを選択する点です。