スケジューリング状況を表したもの

正解は ウ です。 CPUは1つで、 実行可能なタスクのうち優先度が最も高いもの がCPUを使います。I/Oを終えた高優先度のタスクが戻ってくると、実行中の低優先度のタスクからCPUを奪います。0ミリ秒から順にたどります。 0〜2:A がCPU(B, C は待ち)。A は2〜4でI/O 2〜4:B がCPU(3ミリ秒のうち2ミリ秒実行) 4〜6:I/Oを終えた A がCPUを奪い、残りを実行して完了。B は待ち 6〜7:B が残り1ミリ秒を実行し、7〜12でI/O 7〜9:C がCPU、9〜11でI/O 3〜10ミリ秒を取り出すと「A:I/O→CPU→完了」「B:CPU→待ち→CPU→I/O」「C:待ち→CPU→I/O」となり、選択肢ウと一致します。

三つのタスクA〜Cの優先度と,各タスクを単独で実行した場合のCPUと入出力(I/O)装置の動作順序と処理時間は,表のとおりである。A〜Cが同時に実行可能状態になって3ミリ秒経過後から7ミリ秒間のスケジューリングの状況を表したものはどれか。ここで,I/Oは競合せず,OSのオーバヘッドは考慮しないものとする。また,表中の( )内の数字は処理時間を表すものとし,解答群の中の“待ち”は,タスクが実行可能状態にあり,CPUの割当て待ちであることを示す。

タスク

優先度

単独実行時の動作順序と処理時間(ミリ秒)

A

高

CPU(2) → I/O(2) → CPU(2)

B

中

CPU(3) → I/O(5) → CPU(2)

C

低

CPU(2) → I/O(2) → CPU(3)

出典平成30年度 春期 基本情報技術者試験 午前 問16
ア
選択肢アの画像
イ
選択肢イの画像
ウ
選択肢ウの画像
エ
選択肢エの画像