システム構成要素
平成30年度 秋期 基本情報技術者試験 午前 問16
三つのタスクの優先度と,各タスクを単独で実行した場合の CPU と入出力(I/O)装置の動作順序と処理時間は,表のとおりである。優先度方式のタスクスケジューリングを行う OS の下で,三つのタスクが同時に実行可能状態になってから,全てのタスクの実行が終了するまでの,CPU の遊休時間は何ミリ秒か。ここで,CPU は 1 個であり,1 CPU は 1 コアで構成され,I/O は競合せず,OS のオーバヘッドは考慮しないものとする。また,表中の( )内の数字は処理時間を示すものとする。
| 優先度 | 単独実行時の動作順序と処理時間(ミリ秒) |
|---|---|
| 高 | CPU(3) → I/O(5) → CPU(2) |
| 中 | CPU(2) → I/O(6) → CPU(2) |
| 低 | CPU(1) → I/O(5) → CPU(1) |
答えを選ぶ
出典:平成30年度 秋期 基本情報技術者試験 午前 問16(問題文は IPA の公開問題。解説は当サイト作成)
答えと解説を見る
正解:イ
覚える知識
タスクスケジューリングのCPU使用率計算
優先度方式ではCPU待ちの高優先度タスクが先に実行され、全タスクが入出力待ちの間CPUは遊休になる。
この問題で必要なこと
優先度順にCPUを割り当ててタイムラインを書き、CPUが空く区間(6-8ms:2、10-11ms:1)を合計して3ms。
ひっかけ
I/O競合や優先度の逆転を考えて数え違える。
この知識の出題:本試験系 3 回・免除試験 6 回(公開問題での観測値)