平成26年 秋期 情報セキュリティスペシャリスト 午前II 問21

トランザクションA〜Dに関する待ちグラフのうち、デッドロックが発生しているものはどれか。
ここで、待ちグラフの矢印は、X→Yのとき、トランザクションXはトランザクションYがロックしている資源のアンロックを待っていることを表す。

 ア    イ  
 ウ    エ  


答え イ


解説
デッドロックは複数のトランザクションで、互いに相手が占有している資源をロックしようとして、処理が停止することなので、図では資源のアンロック待ちが循環している状態がデッドロックになるので
 
(イ)になります。
この状態は、トランザクションAがトランザクションCのロックしている資源のアンロック待ちで、トランザクションCがトランザクションBのロックしている資源のアンロック待ちで、トランザクションBがトランザクションAのロックしている資源のアンロック待ちで、デッドロックになっています。


キーワード
・デッドロック

キーワードの解説
  • デッドロック(deadlock)
    複数の処理(トランザクション)で、互いに相手が占有している資源(データ)を占有(ロック)しようとして、処理が停止することです。
    処理がA、B、資源がX、Yのときに、処理Aが資源Xを占有し、処理Bが資源Yを占有している状態で、処理Aが資源Yの占有待ちになり、処理Bが資源Xの占有待ちになると、処理AとBはデッドロック状態になります。

もっと、「デッドロック」について調べてみよう。

戻る 一覧へ 次へ