三つの資源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も同じ順なので待ち合わせが循環せず安全である。CはZ→X→Y、DはZ→Y→XとZを先に取るため、AがX(とY)を持ちCまたはDがZを持った状態で相互に待つ可能性がある。
選択肢ごとの解説
- アBは資源の占有順序がAと同じであり、循環待ちにならないので含めるのは誤りである。
- イ正しい。占有順がAと逆向きになるCとDでデッドロックの可能性がある。
- ウDも先にZを占有するため、Aとの間で循環待ちが起こり得る。
- エCも先にZを占有するため、Aとの間で循環待ちが起こり得る。
この問題は2回出題されています
- 2020年度 10月試験 午前 問17(このページ)
- 2024年度 春期 午前 問17
同じ分野の他の問題
- 二つのタスクが共用する二つの資源を排他的に使用するとき、デッドロックが発生するおそれがある。このデッドロックの発生を防ぐ…2019年度 春期 午前 問18
- スレッドセーフの説明として、適切なものはどれか。2025年度 秋期 午前 問17
- 一つのI2Cバスに接続された二つのセンサーがある。それぞれのセンサー値を読み込む二つのタスクを排他的に制御したい。利用す…2025年度 秋期 午前 問16
- 五つのジョブA〜Eに対して、ジョブの多重度が1で、処理時間順方式のスケジューリングを適用した場合、ジョブBのターンアラウ…2025年度 秋期 午前 問15
- 記憶領域を管理するアルゴリズムのうち、ベストフィット方式の特徴として、適切なものはどれか。2025年度 秋期 午前 問5
最終更新:2026-08-25/解説・選択肢ごとの解説は資格暗記が独自に作成しています。問題文と選択肢の出典は上記のとおりです。