IPA過去問ドリル

平成24年度 春期 応用情報技術者試験 午前 問20

テクノロジ/ソフトウェア

二つのタスクの優先度と各タスクを単独で実行した場合のCPUと入出力装置(I/O)の動作順序と処理時間は,表のとおりである。二つのタスクが同時に実行可能状態になってから,全てのタスクの実行が終了するまでの経過時間は何ミリ秒か。ここで,CPUは1個であり,I/Oの同時動作はできないものとし,OSのオーバヘッドは考慮しないものとする。また,表の( )内の数字は処理時間を示すものとする。 優先度「高」:CPU(2) → I/O(7) → CPU(3) → I/O(4) → CPU(3) 優先度「低」:CPU(2) → I/O(3) → CPU(2) → I/O(2) → CPU(3) (注:本サイトでは原問題の表を文字表記に変換しています)

出典:平成24年度 春期 応用情報技術者試験 午前 問20

正解:エ

解説

CPUは1個かつI/Oも同時に1つしか動作できない制約の下で,優先度の高いタスクが優先してCPU・I/Oを使用すると仮定してタイムチャートを描くと,高優先度タスクは0〜2(CPU),2〜9(I/O),9〜12(CPU),12〜16(I/O),16〜19(CPU)で完了します。低優先度タスクはCPU・I/Oが空いているときにのみ実行でき,2〜4(CPU),9〜12(I/O),12〜14(CPU),16〜18(I/O),19〜22(CPU)と進み,19〜22で完了します。したがって全タスク終了までの経過時間は,両者のうち遅い方である22ミリ秒です。

選択肢ごとの解説

  • 誤り。I/Oが同時に動作できないという制約を考慮せずに計算した場合の値です。
  • 誤り。CPU・I/Oの競合による低優先度タスクの待ち時間を一部見落とした場合に生じる値です。
  • 誤り。19ミリ秒に近いものの,低優先度タスクの完了時刻の遅れを正しく反映していません。
  • 正しい。I/O資源も1つしか使えない制約の下でタイムチャートを描くと,全タスクの完了は22ミリ秒後です。
応用情報技術者の過去問を演習モードで解く