IPA公式正解:エ 待ちグラフ
※ 正解はIPA公表の解答です。解説は当サイトが生成AIを用いて作成しています。誤りにお気づきの場合はお問い合わせください。
【解説】正解は選択肢【エ】です。DBMSにおいて、トランザクション間の資源ロック待ち関係を有向グラフとして表した「待ちグラフ(Wait-For Graph)」を用い、閉路(サイクル)が存在するかどうかでデッドロックを検出します。
【詳細解説】■ 本問の核心・解法のポイント
DBMSの排他制御において、互いに相手が保持しているロックの解除を待ち続けて処理が進まなくなるデッドロックの検出機構を問う問題です。
・各選択肢の徹底解説:
・ア:資源割当表は、OSやDBMSがどのプロセスにどの資源を割り当てているかを管理する表ですが、それ単体で直接デッドロックの循環待ちを検出する構造ではありません。
・イ:時刻印順管理表(タイムスタンプ順方式)は、直列化可能性の保証やデッドロックをあらかじめ「防止・回避」するために用いられる手法であり、事後検出のデータ構造ではありません。
・ウ:トランザクションの優先順位を管理する構造であり、デッドロックの検出には直接関与しません。
・エ:【選択肢エ★】適切です。待ちグラフ(Wait-For Graph)は、トランザクションを頂点とし、あるトランザクションが別のトランザクションの解放待ちであることを有向辺で表すデータ構造です。グラフ内に有向閉路(サイクル)が検出された場合、デッドロックが発生していると判定されます。
よって正解はエです。