ソフトウェア
基本情報技術者試験 科目A免除 修了試験 20160124 実施分 問16
三つのタスク 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) |
答えを選ぶ
出典:基本情報技術者試験 科目A免除 修了試験 20160124 実施分 問16(問題文は IPA の公開問題。解説は当サイト作成)
答えと解説を見る
正解:ウ
覚える知識
優先度方式タスクスケジューリングのCPU遊休時間
優先度方式では、実行可能なタスクのうち最高優先度のものにCPUを割り当てる。
この問題で必要なこと
A→B→CのCPU割当てを時系列に展開し、Cが待たされた時間(0〜4msと8〜14ms)を合計する。
ひっかけ
I/O待ちの時間を実行可能状態の時間に含めてしまう誤り。
この知識の出題:本試験系 1 回・免除試験 1 回(公開問題での観測値)