情報処理安全確保支援士試験 情報処理安全確保支援士試験 令和6年度春期 午前Ⅰ 問6: 三つの資源X〜Zを占有して処理を行う四つのプロセスA〜Dがある。各プロセスは処理の進行に伴い,表中の数値の順に資源を占有し,実行終了時に三つの資源を一括して解放
←情報処理安全確保支援士試験 令和6年度春期 午前Ⅰ
三つの資源X〜Zを占有して処理を行う四つのプロセスA〜Dがある。各プロセスは処理の進行に伴い,表中の数値の順に資源を占有し,実行終了時に三つの資源を一括して解放する。プロセスAと同時にもう一つプロセスを動かした場合に,デッドロックを起こす可能性があるプロセスはどれか。
| プロセス | 資源X | 資源Y | 資源Z |
|---|
| A | 1 | 2 | 3 |
| B | 1 | 2 | 3 |
| C | 2 | 3 | 1 |
| D | 3 | 2 | 1 |
問題本文
三つの資源X〜Zを占有して処理を行う四つのプロセスA〜Dがある。各プロセスは処理の進行に伴い,表中の数値の順に資源を占有し,実行終了時に三つの資源を一括して解放する。プロセスAと同時にもう一つプロセスを動かした場合に,デッドロックを起こす可能性があるプロセスはどれか。
解説
デッドロックは、複数プロセスが資源を異なる順序で占有し、互いの解放を待ち合うときに起こりうる。AはX→Y→Zの順。BもA同順なので循環待ちは生じない。Cは2→3→1(Y→Z→X)、DはZ→Y→XでいずれもAと占有順が交差し、片方がZを、もう片方がXを握って待ち合う恐れがある。よってデッドロックの可能性があるのはCとDでイが正解。資源の獲得順を統一すれば回避できる。
選択肢ごとの解説
- ア.BはAと同じ占有順なので循環待ちが生じず、Bを含める点で誤り。
- イ.C・DはともにAと占有順序が交差し循環待ちを起こしうるため、正しく正解。
- ウ.DもAと順序が異なりデッドロックの可能性があるため、Cだけとするのは誤り。
- エ.CもAと順序が交差し可能性があるため、Dだけとするのは誤り。
情報処理安全確保支援士試験 令和6年度春期 午前Ⅰ の過去問一覧へ戻る・問6