システム構成要素
基本情報技術者試験 科目A免除 修了試験 20131215 実施分 問22
五つのタスクを単独で実行した場合の CPU と入出力装置(I/O)の動作順序と処理時間は,表のとおりである。優先度“高”のタスクと,優先度“低”のタスクのうち一つだけを同時に実行する。実行を開始してから,両方のタスクの実行が完了するまでの間の CPU の遊休時間が最も小さいのは,どの優先度“低”のタスクとの組合せか。ここで,I/O は競合せず,OS のオーバヘッドは考慮しないものとする。
また,表の( )内の数字は処理時間を示すものとする。
| 優先度 | 単独実行時の動作順序と処理時間(単位 ミリ秒) |
|---|---|
| 高 | CPU (3) → I/O (3) → CPU (3) → I/O (3) → CPU (2) |
| ア 低 | CPU (2) → I/O (5) → CPU (2) → I/O (2) → CPU (3) |
| イ 低 | CPU (3) → I/O (2) → CPU (2) → I/O (3) → CPU (2) |
| ウ 低 | CPU (3) → I/O (2) → CPU (3) → I/O (1) → CPU (4) |
| エ 低 | CPU (3) → I/O (4) → CPU (2) → I/O (5) → CPU (2) |
答えを選ぶ
出典:基本情報技術者試験 科目A免除 修了試験 20131215 実施分 問22(問題文は IPA の公開問題。解説は当サイト作成)
答えと解説を見る
正解:ウ
覚える知識
タスクスケジューリングのCPU使用率計算
優先度方式では、CPUを要求する複数のタスクのうち優先度の高いものが先に実行される。
この問題で必要なこと
優先度高のタスクが先にCPUを使い、低はCPUが空いたときだけ実行される。タイムチャートを作ってCPUが空く時間を数える。ウでは遊休が0。
ひっかけ
低優先度の待ち時間でCPUが空くと誤算しやすい。
この知識の出題:本試験系 3 回・免除試験 6 回(公開問題での観測値)