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

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

三つの資源 X〜Z を占有して処理を行う四つのプロセス A〜D がある。各プロセスは処理の進行に伴い,表中の数値の順に資源を占有し,実行終了時に三つの資源を一括して解放する。プロセス A とデッドロックを起こす可能性があるプロセスはどれか。

問題の図表(IPA公式問題冊子より引用)
図表:IPA公式問題冊子より
  1.  B,C,D
  2.  C,D
  3.  Cだけ
  4.  Dだけ
解答・解説を見る

正解:イ

AI解説

デッドロックは、複数のプロセスが互いに相手の占有する資源の解放を待ち合って停止する状態で、資源の確保順序が互いに異なる場合に発生し得る。表の確保順序を比較すると、プロセスBはAと同じ順序で資源X〜Zを確保するためAとの間で循環待ちは生じない。一方CとDはAと確保順序が逆転する部分があるため、Aとデッドロックを起こす可能性がある。 ア: Bを含めているが、Aと同一順序で資源を確保するBとは互いに待ち合う循環が構成されず、デッドロックにはならない。 イ: 正解。確保順序がAと交差(逆転)するCとDだけがデッドロックの可能性をもつ。 ウ: Dも確保順序がAと逆転する箇所があるため、Cだけとするのは誤りである。 エ: Cも同様に可能性があるため、Dだけとするのは誤りである。 💡 「全プロセスが同じ順序で資源を確保すればデッドロックは起きない」が判定の決め手であり、防止策そのものでもある。順序が逆転する組合せだけを疑えばよい。

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

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

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

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

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