修了試験 2014-12-21実施分 基本情報技術者試験 問29
表は,トランザクション1~3が資源A~Cにかけるロックの種別を表す。 また,資源へのロックはトランザクションの開始と同時にかけられる。 トランザクション1~3のうち二つのトランザクションをほぼ同時に開始した場合の動きについて,適切な記述はどれか。 ここで,表中の“-”はロックなし,“S”は共有ロック,“X”は専有ロックを示す。 トランザクション\資源|A|B|C/1|S|-|X/2|S|X|-/3|X|S|-
正答2
解説
正解は2です。 共有ロック(S)と専有ロック(X)の両立性を判断する問題です。 共有ロックどうしは同時にかけられますが、専有ロックは他のどのロックとも同時にかけられません。 表では、トランザクション1は資源AにS・CにX、2は資源AにS・BにX、3は資源AにX・BにSをかけます。 後から開始したトランザクションが、先のトランザクションと同じ資源で両立しないロックをかけようとすると資源待ちになります。 【選択肢別解説】 1:× 1は資源Aに共有ロックをかけています。 後から3が資源Aに専有ロックをかけようとするので両立せず、3は資源待ちになります。 2:○ 資源Aは2も1も共有ロックなので両立します。 資源Bは2だけ、資源Cは1だけがロックするので競合しません。 したがって1に資源待ちは発生しません。 3:× 資源Aでは2の共有ロックと3の専有ロックが両立しません。 資源Bでも2の専有ロックと3の共有ロックが両立しないので、3は資源待ちになります。 4:× 3は資源Aに専有ロックをかけています。 後から1が資源Aに共有ロックをかけようとしても両立しないので、1は資源待ちになります。 【ポイント】 両立するのは「共有と共有」の組合せだけです。 どちらか一方でも専有ロックなら、後から来たトランザクションが待たされます。まとめて解く
修了試験 2014-12-21実施分を通しで解く(80問)→