三つの資源X~Zを占有して処理を行う四つのプロセスA~Dがある。各プロセスは処理の進行に伴い、表中の数値の順に資源を占有し、実行終了時に三つの資源を一括して解放する。プロセスAとデッドロックを起こす可能性のあるプロセスはどれか。
ア | B,C,D |
イ | C,D |
ウ | Cだけ |
エ | Dだけ |
デッドロックとは、複数のトランザクションが、互いに相手のロックしている資源を要求して待ち状態となり、実行できなくなることである。
デッドロックは各プロセスの資源占有順序が異なる場合に発生する(資源占有順序が同一の場合には発生しない)。
資源占有の順序がプロセスAと異なるのはプロセスCとプロセスDである。
よってイが正解である。