ソフトウェア

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

二つのタスク 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)
  • ア 120
  • イ 140
  • ウ 160
  • エ 180

出典:基本情報技術者試験 科目A免除 修了試験 20170723 実施分 問16

答えと解説を見る

正解:ウ

覚える知識

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

共有I/Oは先に使用中のタスクの終了を待って利用するため、待ち時間を含めて時系列で追う。

この問題で必要なこと

CPUと共通I/Oの使用状況をタイムチャートで追うと、BのCPU処理終了は160ミリ秒。

ひっかけ

I/Oの待ち時間を無視して合計時間を足し合わせさせる。

この知識の出題:本試験系 0 回・免除試験 7 回(公開問題での観測値)

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

同じ知識の過去問