問28 |
特定のタスクがCPU資源の割当てを持ち続ける可能性が高いタスクスケジューリング方式はどれか。 |
|
ア |
各タスクの優先度を決めて、優先度が高い順に実行するが、CPU割当てまでの待ち時間の長さに応じて優先度を徐々に上げていく。 |
イ |
各タスクをCPU待ち行列に置かれた順に実行し、一定時間が経過したら実行を中断してCPU待ち行列の最後尾に加える。 |
ウ |
処理予定時間が最も短いタスクから処理を実行する。現在実行中の処理が完結するか、又は何らかの要因によって中断されたとき、次のタスクを開始する。 |
エ |
タスクがシステムに到着した順に実行可能待ち行列の最後尾に加え、常に実行可能待ち行列の先頭のタスクにCPUを割り当てる。 |
|
|
解説 |
それぞれのスケジューリング方式の待たされるタスクについて順に見ていきます。
選択肢ア(優先順位方式):単純に優先度の高いものを実行すると、待ち続けるタスクが発生するが、待った時間に応じて優先順位を上げる(エイジング)を行うことでこれを回避しています。
選択肢イ(ラウンドロビン方式):タスクの切り替えに多少のオーバヘッドがかかりますが、すべてのタスクに順番にCPUの使用権がわたります。
選択肢ウ(処理時間順方式):常に自分よりも処理時間の短いものが投入され続ける限り、そのタスクはまたされ続けます。
選択肢エ(到着順方式):リアルタイム性は失われますが、投入したタスクはいつかは処理してもらえます。
いつまでも投入したジョブが実行されないことをスタベーションといいます。 |
|