コンピュータ

ラウンドロビン方式 | タスクスケジューリング方式

2019年9月18日

「ラウンドロビン方式」って知っているかな?
「タスクスケジューリング」の一つでCPUの使用時間が決まっている方式ですよね。
ラウンドロビン??

タスクスケジューリング??

まったく分からない・・・

情報処理試験でもよく出題される用語だよ。

それでは「ラウンドロビン方式」について図解で解説していくよ。

タスクスケジューリング方式とは

タスクとは、コンピュータが処理する単位です。例えばコンピュータのアプリケーションアイコンをクリックすると、クリックしたアプリケーションを開くようにコンピュータに命令します。このような命令により発生する処理の単位をタスクといいます。

コンピュータに対する命令は一つとは限りません。コンピュータに複数の命令が依頼されることはよくあることです。しかし、処理を実行する「CPU」は複数のことを同時に処理できるわけではありません。

そのため、CPU」にどのタスクを処理させるか、タスクの実行順序を定める必要があります。これをタスクスケジューリングといいます。

タスクスケジューリングには、以下の方式があります。

名前 説明
到着順方式 実行可能状態になった順番に処理する方式
優先度順方式 タスクに優先度を設定し、優先度順に処理する方式
動的優先度順方式 基本は優先度順方式と同じだが、待ち時間の長さに応じて優先度を徐々に上げていく方式
ラウンドロビン方式 CPUを使用する時間を定め、その時間内に処理が終わらない場合は、次のタスクに使用権が与えられる方式
多重待ち行列方式 ラウンドロビン方式に優先順位を加味させた方式
処理時間順方式 タスクの処理時間が短いものから処理する方式
イベントドリブン方式 マウス操作によるイベントでCPUの使用権を切り替える方式

ラウンドロビン方式ってなに?

ラウンドロビン方式とは、CPUを使用できる時間(タイムクォンタム)を定め、その時間内に処理が終わらない場合は、次のタスクにCPUの使用権が与えられる方式です。

規定時間内に処理が終わらなかった実行中のタスクは、処理を中断し待ち行列の最後尾に移動します。

規定時間内に処理が終了した場合

ラウンドロビン方式1

実行可能状態になった順番で「タスク」にCPUの使用権が与えられます。上記の例では「タスクA」「タスクB」「タスクC」「タスクD」の順番でCPUの使用権が与えられます。

ラウンドロビン方式2

「タスクA」の処理が規定時間内で終了した場合は、「タスクA」はそのまま処理完了となります。そして順番待ちをしている「タスクB」の処理が開始されます。

スポンサーリンク

規定時間内に処理が終わらなかった場合

ラウンドロビン方式3

実行可能状態になった順番で「タスク」にCPUの使用権が与えられます。上記の例では「タスクB」「タスクC」「タスクD」の順番でCPUの使用権が与えられます。

ラウンドロビン方式4

「タスクB」の処理が規定時間内で終わらなかった場合は、「タスクB」の処理を中断し最後尾に移動します。上記の例では「タスクD」の後に回されています。

そして次のタスクである「タスクC」の処理が開始されます。

CPUの使用権を一定時間ごとに切り替えることで、平等にタスクを処理していく方式と言えます。

helpful