ソフトウェア
基本情報技術者試験 科目A免除 修了試験 201001 実施分 問19
二つのタスク A,B を単独で実行した場合の CPU と入出力装置(I/O)の動作順序と処理時間は,表のとおりである。次の条件で二つのタスクが同時に実行可能状態になってから,タスク B の実行が完了するまでの時間は何ミリ秒か。ここで,表の( )内の数字は処理時間を表すものとする。
〔条件〕
(1) タスク A,B は同一の I/O を使用し,タスク A が先に実行される。
(2) CPU 処理を実行中のタスクは,入出力処理を開始するまでは処理を継続し,中断されない。
(3) I/O も入出力が終了するまで処理を中断されない。
(4) その他のオーバヘッドは考慮しない。
| タスク | 単独実行時の動作順序と処理時間(単位 ミリ秒) |
|---|---|
| A | CPU(20) → I/O(30) → CPU(20) → I/O(40) → CPU(10) |
| B | CPU(10) → I/O(30) → CPU(20) → I/O(20) → CPU(20) |
- ア 120
- イ 140
- ウ 160
- エ 180
出典:基本情報技術者試験 科目A免除 修了試験 201001 実施分 問19
答えと解説を見る
正解:ウ
覚える知識
CPUとI/O競合下のタスク実行時間計算
共用資源を使うタスクの完了時刻は、資源の空き待ちを含めたタイムチャートで求める。
この問題で必要なこと
CPUとI/Oは共に非中断で、I/Oは共用。タイムチャートを描くと、Bの完了は160ミリ秒になる。
ひっかけ
I/Oの待ち時間を無視して単純に合計すると誤答になる。
この知識の出題:本試験系 0 回・免除試験 7 回(公開問題での観測値)