平成22年度 春期 データベーススペシャリスト試験 午前Ⅱ 問17
テクノロジ/データベースDBMSにおいて,デッドロックを検出するために使われるデータ構造はどれか。
出典:平成22年度 春期 データベーススペシャリスト試験 午前Ⅱ 問17
- ア資源割当表
- イ時刻印順管理表
- ウトランザクションの優先順管理表
- エ待ちグラフ
正解:エ
解説
デッドロックの検出には,各トランザクションが互いにどのロックの解放を待っているかを表す待ちグラフ(wait-for graph)を用い,グラフ中に循環(サイクル)が存在するかどうかを調べる方法が一般的に使用されます。
選択肢ごとの解説
- ア誤り。資源割当表は,各資源がどのトランザクションに割り当てられているかを管理する表であり,それ単体でデッドロックの検出に使われるデータ構造ではありません。
- イ誤り。時刻印順管理表は,時刻印アルゴリズムによる同時実行制御で用いられる情報であり,デッドロックを未然に防ぐ方式に関連しますが,デッドロックの検出に使うデータ構造ではありません。
- ウ誤り。トランザクションの優先順管理表は,ロック要求の優先度を管理するための情報であり,デッドロックの検出に直接使われるデータ構造ではありません。
- エ正しい。待ちグラフを作成し,その中に循環(サイクル)が存在するかどうかを調べることによって,デッドロックの発生を検出できます。