ソフトウェア

基本情報技術者試験 科目A免除 修了試験 20120722 実施分 問21

二つのタスクA,Bを単独で実行した場合のCPUと入出力装置(I/O)の動作順序と処理時間は,表のとおりである。次の条件で二つのタスクが同時に実行可能状態になってから,タスクBの実行が完了するまでの時間は何ミリ秒か。ここで,表の( )内の数字は処理時間を表すものとする。 〔条件〕 (1) タスクA,Bは同一のI/Oを使用し,タスクAが先に実行される。 (2) CPU処理を実行中のタスクは,入出力処理を開始するまでは処理を継続し,中断されない。 (3) I/Oも入出力が終了するまで処理を中断されない。 (4) その他のオーバヘッドは考慮しない。
単独実行時の動作順序と処理時間(単位 ミリ秒)
タスク単独実行時の動作順序と処理時間(単位 ミリ秒)
ACPU(20) → I/O(30) → CPU(20) → I/O(40) → CPU(10)
BCPU(10) → I/O(30) → CPU(20) → I/O(20) → CPU(20)
答えを選ぶ

出典:基本情報技術者試験 科目A免除 修了試験 20120722 実施分 問21(問題文は IPA の公開問題。解説は当サイト作成)

解説に誤りを見つけたら、解説の誤りを報告してください。

答えと解説を見る

正解:ウ

覚える知識

CPUとI/O競合下のタスク実行時間計算

I/Oが共有される場合は、先行タスクの入出力が終わるまで後続タスクは待たされる。

この問題で必要なこと

タイムチャートで追う。A:CPU0-20,I/O20-50,CPU50-70,I/O70-110,CPU110-120。B:CPU20-30,I/O待ち(Aが使用中)50-80,CPU80-100,I/O110-130(Aの70-110後),CPU130-140…を丁寧に追うとB完了は160ms。

ひっかけ

I/O競合を考慮せず単純合計や並行実行で短く見積もる。

この知識の出題:本試験系 0 回・免除試験 7 回(公開問題での観測値)。頻出知識ランキング842位(全1,254件中)。

この知識をアプリで解いて覚える レッスン「スケジューリングと排他制御の計算」で学ぶ

同じ知識の過去問