AP過去問 令和6年度秋期 午前 問16
問16(問題文)
タスクスケジューリング方式の説明のうち、特定のタスクがCPU資源の割り当てを待ち続ける可能性が最も高いものはどれか。
ア 各タスクの優先度を決めて、優先度が高い順に実行し、CPU割り当てまでの待ち時間の長さに応じて優先度を徐々に上げていく。
イ 各タスクを実行可能待ち行列に置かれた順に実行し、一定時間が経過したら実行を中断して実行可能待ち行列の最後尾に加える。
ウ 処理予定時間が最も短いタスクから順に処理を実行する。現在実行中の処理が終了するか、又は何らかの要因によって中断されたとき、次のタスクを開始する。
エ タスクがシステムに到着した順に実行可能待ち行列の最後尾に加え、常に実行可能待ち行列の先頭のタスクにCPUを割り当てる。
回答・解説
ア
動的優先度スケジューリング方式
- 優先度を基にタスクをスケジュールしますが、待ち時間が長いタスクは優先度を徐々に上げていく仕組みがあります(エージング)。
- 待ち続けるタスクに対する対策が組み込まれているため、特定のタスクが長時間待ち続ける可能性は低いです。
イ
ラウンドロビンスケジューリング方式
- 各タスクに一定の時間(タイムクォンタム)が割り当てられ、順番に処理されます。実行中のタスクが割り当て時間を使い切ると、次のタスクにCPUを渡します。
- すべてのタスクが公平にCPU時間を得るため、特定のタスクが待ち続ける可能性は低いです。
ウ
最短ジョブ優先 (SJF) スケジューリング方式
- 処理予定時間が最も短いタスクを優先して実行します。
- 欠点:処理時間が長いタスク(長時間タスク)は、常に短時間タスクに押しのけられる可能性があります。この結果、長時間タスクが「無期限に待ち続ける」状況(スターベーション)が発生しやすいです。
エ
先着順(FCFS: First-Come, First-Served)スケジューリング方式
- タスクが到着した順に実行されるため、順番を守って処理が進みます。
- 一部のタスクが待つ場合もありますが、順番は厳密に守られるため、無期限に待たされることはありません。
したがって
ウ
が答えです。