デッドロックが発生する可能性のある排他制御の方式はどれか。
ア |
2相ロックプロトコルに従ってロックする方式 |
イ |
時刻印を用いて、トランザクションの優先順位を決める方式 |
ウ |
全てのトランザクションにおいて、ロック対象のデータは一定の順序でロックを行い、すべてのロックが完了するまでアンロックを行わない方式 |
エ |
トランザクション開始時に一括してロックする方式 |
答え ア
【解説】
ア |
2相ロックプロトコルは分散データベースシステムでリソースをロックする方法ですが、デッドロックを防ぐための方法ではありません。 |
イ |
時刻印を用いて、トランザクションの優先順位を決めることで、デッドロックを防ぐことができます。 |
ウ |
全てのトランザクションにおいて、ロック対象のデータは一定の順序でロックを行い、すべてのロックが完了するまでアンロックを行わないことで、デッドロックを防ぐことができます。 |
エ |
トランザクション開始時に一括してロックすることで、デッドロックを防ぐことができます。 |
【キーワード】
・排他制御
・デッドロック
【キーワードの解説】
- 排他制御
コンピュータの動作において、複数の利用者(プロセス、ジョブ)がアクセス可能な共有資源に対し、複数の利用者からの同時アクセスにより競合が発生する場合に、ある利用者に資源を独占的に利用させている間は、他の利用者がアクセスできないようにする事で整合性を保つ処理の事です。
- デッドロック(deadlock)
複数の処理(トランザクション)で、互いに相手が占有している資源(データ)を占有(ロック)しようとして、処理が停止することです。
処理がA、B、資源がX、Yのときに、処理Aが資源Xを占有し、処理Bが資源Yを占有している状態で、処理Aが資源Yの占有待ちになり、処理Bが資源Xの占有待ちになると、処理AとBはデッドロック状態になります。
もっと、「排他制御」について調べてみよう。
戻る
一覧へ
次へ
|