令和6年度 秋期 応用情報技術者試験 午前 問16

タスクスケジューリング方式の説明のうち,特定のタスクがCPU資源の割当てを待ち続ける可能性が最も高いものはどれか。

解答・解説

正解: ウ. 処理予定時間が最も短いタスクから順に処理を実行する。現在実行中の処理が終了するか,又は何らかの要因によって中断されたとき,次のタスクを開始する。

特定のタスクがCPU資源の割当てを待ち続ける(実行されない)状態を スターベーション(飢餓状態) と呼びます。本問は、このスターベーションが発生しやすいスケジューリング方式を問う問題です。

処理予定時間が最も短いタスクから順に実行する方式(最短処理時間優先方式)では、短い処理時間のタスクが次々と到着し続けた場合、処理予定時間が長いタスクはずっと後回しにされてしまい、CPUが割り当てられない状態が継続する可能性が最も高くなります。したがって、ウが正解です。

各選択肢の解説

  • ア: 優先度方式のうちの エージング と呼ばれる手法です。待ち時間が長くなるにつれて優先度が徐々に上がるため、最終的には必ず最高優先度になり、待ち続けることはありません。
  • イ: ラウンドロビン方式 の説明です。一定時間(タイムクウォンタム)ごとに切り替えて順番に処理するため、すべてのタスクに均等にCPUが割り当てられ、待ち続けることはありません。
  • ウ (正解): 最短処理時間優先方式(SPF方式) の説明です。次々に短いタスクが到着すると、処理時間の長いタスクが永遠に実行されないスターベーション状態に陥る危険性が最も高いです。
  • エ: 到着順方式(FCFS方式) の説明です。先に到着したタスクから順に実行するため、待ち時間は長くなることがあっても、順番がくれば必ず実行されます。

Spineチーム