IPA過去問ドリル

平成25年度 秋期 基本情報技術者試験 午前 問32

テクノロジ/データベース

表は,トランザクション1~3が資源A~Cにかけるロックの種別を表す。また,資源へのロックはトランザクションの開始と同時にかけられる。トランザクション1~3のうち二つのトランザクションをほぼ同時に開始した場合の動きについて,適切な記述はどれか。ここで,表中の“-”はロックなし,“S”は共有ロック,“X”は専有ロックを示す。 トランザクション1:資源A=S,資源B=-,資源C=X トランザクション2:資源A=S,資源B=X,資源C=- トランザクション3:資源A=X,資源B=S,資源C=- (注:本サイトでは原問題の表を文字表記に変換しています)

出典:平成25年度 秋期 基本情報技術者試験 午前 問32

正解:イ

解説

共有ロック(S)同士は両立しますが,専有ロック(X)は他のいかなるロックとも両立しません。トランザクション2(A=S,B=X)とトランザクション1(A=S,B=-,C=X)は,資源Aは両方ともS同士で両立し,資源B,Cはどちらか一方にしかロックがないため競合しません。したがって,トランザクション2の後にトランザクション1を開始しても資源待ちは発生しません。

選択肢ごとの解説

  • 誤り。資源Aについてトランザクション1はS,トランザクション3はXであり,SとXは両立しないため,トランザクション3は資源A待ちになります。
  • 正しい。トランザクション2とトランザクション1は,資源Aが共にSで両立し,資源B,Cもどちらか一方にしかロックがないため,資源待ちは発生しません。
  • 誤り。資源Aについてトランザクション2はS,トランザクション3はXであり,SとXは両立しないため,トランザクション3は資源A待ちになります。
  • 誤り。資源Aについてトランザクション3はX,トランザクション1はSであり,SとXは両立しないため,トランザクション1は資源A待ちになります。
基本情報技術者の過去問を演習モードで解く