令和6年度 秋期 応用情報技術者試験 午前 問16
【問題16】
タスクスケジューリング方式の説明のうち,特定のタスクがCPU資源の割当てを待ち続ける可能性が最も高いものはどれか。
各タスクの優先度を決めて,優先度が高い順に実行し,CPU割当てまでの待ち時間の長さに応じて優先度を徐々に上げていく。
各タスクを実行可能待ち行列に置かれた順に実行し,一定時間が経過したら実行を中断して実行可能待ち行列の最後尾に加える。
処理予定時間が最も短いタスクから順に処理を実行する。現在実行中の処理が終了するか,又は何らかの要因によって中断されたとき,次のタスクを開始する。
タスクがシステムに到着した順に実行可能待ち行列の最後尾に加え,常に実行可能待ち行列の先頭のタスクにCPUを割り当てる。
【解説】
ア: 各タスクの優先度を決めて,優先度が高い順に実行し,CPU割当てまでの待ち時間の長さに応じて優先度を徐々に上げていく。
誤り。動的優先順位方式では,長時間待機したタスクの優先度が上昇するため,スターベーションは起こりにくいです。
イ: 各タスクを実行可能待ち行列に置かれた順に実行し,一定時間が経過したら実行を中断して実行可能待ち行列の最後尾に加える。
誤り。このラウンドロビン方式では,全てのタスクに公平にCPU時間が与えられるため,特定のタスクが待ち続けることはありません。
ウ: 処理予定時間が最も短いタスクから順に処理を実行する。現在実行中の処理が終了するか,又は何らかの要因によって中断されたとき,次のタスクを開始する。
正しい。この「最短処理時間優先(SJF)」方式では,処理時間の長いタスクが後回しにされ続ける可能性があり,スターベーションが発生しやすくなります。
エ: タスクがシステムに到着した順に実行可能待ち行列の最後尾に加え,常に実行可能待ち行列の先頭のタスクにCPUを割り当てる。
誤り。この「先入れ先出し(FCFS)」方式では到着順に処理されるため,極端なスターベーションは起きにくいです。
【答え】
ウ: 処理予定時間が最も短いタスクから順に処理を実行する。現在実行中の処理が終了するか,又は何らかの要因によって中断されたとき,次のタスクを開始する。
出典:令和6年度 秋期 応用情報技術者試験 午前 問16