三つのタスクA〜Cの優先度と各タスクを単独で実行した場合のCPUと入出力 (I/O) 装置の動作順序と処理時間は、表のとおりである。優先順位方式のタスクスケジューリングを行うOSの下で、
三つのタスクが同時に実行可能状態になってから、タスクCが終了するまでに、タスクCが実行可能状態にある時間は延べ何ミリ秒か。ここで、I/Oは競合せず、OSのオーバヘッドは考慮しないものとする。また、表中の
() 内の数字は処理時間を示すものとする。
┌───┬───┬───────────────────┐
│タスク│優先度│単独実行時の動作順序と処理時間(ミリ秒)│
├───┼───┼───────────────────┤
│ A │ 高 │ CPU(2)→I/O(6)→CPU(4) │
├───┼───┼───────────────────┤
│ B │ 中 │ CPU(2)→I/O(4)→CPU(2) │
├───┼───┼───────────────────┤
│ C │ 低 │ CPU(2)→I/O(2)→CPU(3) │
└───┴───┴───────────────────┘
ア 6 イ 8 ウ 10 エ 12
ウ
■: タスクAのCPU処理
■: タスクBのCPU処理
■: タスクCのCPU処理
◆: タスクAのI/O処理
◆: タスクBのI/O処理
◆: タスクCのI/O処理
×: タスクCの実行可能時間
と表記すると、処理状況は以下の通りである。
時間 :1234567891011121314151617
タスクA:
■■◆◆◆◆◆◆■■■■
タスクB: ■■◆◆◆◆ ■■
タスクC:××××■■◆◆××××××■■■
処理は17秒後に終わり、タスクCが実行可能状態にある時間は、延べ10秒である。
問16 | 目次 | 問18 |