\r\n\r\n
スケジューラとスケジューラは、オペレーティングシステムのプロセススケジューリングに関連しています。スケジューラとの大きな違いは、スケジューラは複数のプロセスの中から実行するプロセスを選択するのに対し、スケジューラはスケジューラによって選択されたプロセスにCPUを割り当てることである。
スケジューリングとは、複数のプロセスを実行するために、どのプロセスをCPUに割り当てるかをオペレーティングシステムが決定することである。
1. 概要と主な違い 2. スケジューラとは 3. スケジューラとは 4. スケジューラ対スケジューラ 5. 横並び比較 - スケジューラ対スケジューラを表形式で示す 6. まとめ
OSのスケジューラには3種類ある。長期スケジューラ、短期スケジューラ、中期スケジューラである。長期スケジューラは、ジョブスケジューラとも呼ばれます。コンピュータ・システムでは、多くのプロセスが実行されるのを待っています。これらのプロセスは、補助記憶装置やジョブキューに置かれ、後で実行される。長期スケジューラの目的は、ジョブキューからプロセスを選択し、そのプロセスをメインメモリ内のレディキューに入れることである。
短期スケジューラは、CPUスケジューラとも呼ばれる。短期スケジューラの仕事は、レディキューからCPUに割り当てるべきプロセスを選択することである。前工程が待機状態になったら、短期スケジューラはレディキューから工程を選択する必要がある。高速でなければ、CPUの時間を浪費することになります。
図01:プロセススケジューリング
実行過程でI/O操作が必要な場合があります。そのため、プロセスは待機状態に入る。この作業を「ポーズ」と呼びます。CPUを最大限に活用するためには、他のプロセスを実行する必要があります。ハングしたプロセスは、補助記憶装置に戻される。一定時間経過後、転送されたプロセスはメインメモリに戻り、終了した位置から実行を再開することができる。ハングアップしたプロセスを補助メモリに移すことをスワッピングといいます。プロセスをメインメモリに戻すことをスワップインといいます。この入れ替えは、メディアスケジューラによって行われる。
短期スケジューラは、レディキューから選択を行うと、選択されたプロセスをCPUに割り当てるタスクを実行する。実行中のプロセスがIO処理待ちなどの状態になり、CPUが他のプロセスに割り当てられる。このようにCPUがあるプロセスから別のプロセスに切り替わることをコンテキストスイッチと呼ぶ。スケジューラは、コンテキストの切り替え、ユーザレジスタの設定、メモリマッピングなど、さまざまなタスクを実行します。これらは、プロセスを実行し、CPUの制御をそのプロセスに移すために必要なものである。スケジューリングを行うと、プロセスはレディ状態から実行状態に変化する。
スケジューラは短期スケジューラの一部と考えることもあるので、ユニット全体を短期スケジューラと呼ぶこともある。このシナリオでは、短期スケジューラのタスクは、レディキューからプロセスを選択し、そのプロセスにCPUを割り当てることである。
スケジューラ、スケジューラ | |
スケジューラとは、実行するプロセスを選択することで、プロセスのスケジューリングを行う特殊なシステムソフトウェアのことです。 | スケジューラとは、短期スケジューラによって選択されたプロセスにCPUの制御を与えるモジュールのことである。 |
タイプ | |
スケジューラには、長期スケジューラ、短期スケジューラ、中期スケジューラという3つのタイプがある。 | スケジューリング手順については、分類していません。 |
主な業務内容 | |
長期スケジューラは、ジョブキューからプロセスを選択し、レディ状態にキューイングする。短期スケジューラは、準備の整ったプロセスを選んでキューに入れる。メディアスケジューラは、スワップイン、スワップアウトの処理を行う。 | スケジューラは、短期スケジューラによって選択されたプロセスにCPUを割り当てる。 |
OSのプロセススケジューリングには、スケジューラやスケジューラが使われます。スケジューラとの違いは、スケジューラは複数のプロセスから実行するプロセスを選択するのに対し、スケジューラは選択されたプロセスにCPUを割り当てることである。