平成22年度秋期 応用情報技術者試験 午前 問18

分野:ソフトウェア(OS・タスク/プロセス管理・記憶管理・ファイル管理・OSS・ミドルウェア)|実際に出題されたIPA過去問題

五つのタスク A~E の優先度と,各タスクを単独で実行した場合の CPU と入出力装置(I/O)の動作順序と処理時間は,表のとおりである。優先度"高"のタスク A と B~E のどのタスクを組み合わせれば,組み合わせたタスクが同時に実行を開始してから,両方のタスクの実行が終了するまでの間の CPU の遊休時間をゼロにできるか。ここで,I/O は競合せず,OS のオーバヘッドは無視できるものとする。また,表の( )内の数字は処理時間を表すものとする。

問題の図表(IPA公式問題冊子より引用)
図表:IPA公式問題冊子より
  1.  B CPU(2)→I/O(5)→CPU(2)→I/O(2)→CPU(3)
  2.  C CPU(3)→I/O(2)→CPU(2)→I/O(3)→CPU(2)
  3.  D CPU(3)→I/O(2)→CPU(3)→I/O(1)→CPU(4)
  4.  E CPU(3)→I/O(4)→CPU(2)→I/O(5)→CPU(2)
解答・解説を見る

正解:ウ

AI解説

優先度"高"のタスクAがCPUとI/Oを交互に使用して実行される間、CPUが空く時間帯(Aのタスクが入出力を待っている間)に、組み合わせる相手のタスクがちょうどCPUを使用するように処理時間が噛み合えば、CPUの遊休時間をゼロにできる。表に示された各タスクのCPU・I/O動作順序と処理時間を突き合わせると、タスクDと組み合わせた場合にAのI/O待ち時間とDのCPU使用時間がすき間なく一致し、CPU遊休時間がゼロになる。 ア: タスクBの処理時間の並びでは、AとBを組み合わせてもCPUが空く時間帯が生じ、遊休時間をゼロにはできない。 イ: タスクCの処理時間の並びでも同様に、AとCの組合せではCPUの空き時間が発生する。 ウ: 正しい。タスクDのCPU・I/Oの処理時間の並びが、タスクAのI/O待ち時間を過不足なく埋め合わせる形になっており、両者を組み合わせるとCPUの遊休時間をゼロにできる。 エ: タスクEの処理時間の並びでも、AとEの組合せではCPUが空く時間帯が生じ、遊休時間をゼロにはできない。 💡 この種の問題は、優先度"高"タスクのCPU区間とI/O区間を時間軸上に書き出し、相手タスクのCPU区間がちょうどI/O待ちの隙間にすき間なく収まるかを確認するとよい。

出典:平成22年度 秋期 応用情報技術者試験 午前 問18 / 独立行政法人情報処理推進機構(IPA)
※Web掲載用に表記を一部変更しています。図表はIPA公式問題冊子から引用しています。著作権はIPAに帰属します。
📱 演習アプリで解く(無料・登録不要・2,640問収録)

「ソフトウェア」分野の攻略ポイント

OS・タスク/プロセス管理・記憶管理・ファイル管理・OSS・ミドルウェアが範囲です。ページ置換えアルゴリズムやタスクスケジューリングは手順が決まっているので、シミュレーションの練習をすれば確実に得点源になります。

ソフトウェアの攻略ポイントをすべて見る(要点6項目・ひっかけ3項目)→

同じ分野(ソフトウェア(OS・タスク/プロセス管理・記憶管理・ファイル管理・OSS・ミドルウェア))の過去問