三つの資源X〜Zを占有して処理を行う四つのプロセスA〜Dがある。各プロセスは処理の進行に伴い、表中の数値の順に資源を占有し、実行終了時に三つの資源を一括して解放する。プロセスAと同時にもう一つプロセスを動かした場合に、デッドロックを起こす可能性があるプロセスはどれか。
資源の占有順序が逆のプロセス同士でデッドロックが起こる
| プロセス | 資源の占有順序 | ||
|---|---|---|---|
| 資源X | 資源Y | 資源Z | |
| A | 1 | 2 | 3 |
| B | 1 | 2 | 3 |
| C | 2 | 3 | 1 |
| D | 3 | 2 | 1 |
選択肢
- アB, C, D
- イC, D
- ウCだけ
- エDだけ
正解と解説
正解:イ C, D
デッドロックは、2つのプロセスが資源を互いに逆順で確保しようとしたときに起こりうる。AはX→Y→Zの順に占有する。BもX→Y→Zと同じ順なので待ち合わせが循環せず安全である。CはZ→X→Y、DはZ→Y→XとAとは逆向きに資源を取るため、AがXを、C(またはD)がZを保持した状態で互いに相手の資源を待ち、デッドロックとなりうる。
選択肢ごとの解説
- アBは資源の占有順序がAと同一なので、循環待ちが生じずデッドロックにならない。
- イ正解。CとDはAと逆順に資源を確保するため、循環待ちが発生しうる。
- ウCだけではなく、Dも占有順序がAと逆向きでデッドロックの可能性がある。
- エDだけではなく、Cも同様に危険である。
同じ分野の他の問題
- 仮想記憶管理におけるページ置換えアルゴリズムとしてLRU方式を採用する。主記憶のページ枠が、4000, 5000, 60…2025年度 春期 問6
- 手続型言語のコンパイラがコード生成までに行う処理のうち、最後に行うものはどれか。2024年度 秋期 問7
- 仮想記憶方式において、セグメンテーション方式と比較した場合のページング方式の長所はどれか。2024年度 秋期 問6
- プリエンプティブな優先度ベースのスケジューリングで実行する二つの周期タスクA及びBがある。タスクBが周期内に処理を完了で…2023年度 秋期 問6
- 二つのタスクが共用する二つの資源を排他的に使用するとき、デッドロックが発生するおそれがある。このデッドロックの発生を防ぐ…2019年度 春期 問6
最終更新:2026-08-25/解説・選択肢ごとの解説は資格暗記が独自に作成しています。問題文と選択肢の出典は上記のとおりです。