Что такое блокировка, определение двоичной блокировки и какие правила применяются в диспетчере блокировок?

1 Ответы


  • Каждый элемент данных имеет переменную, которая описывает состояние элемента, с точки зрения того, какие операции могут быть применены к нему, эта переменная, известная как блокировка. Обычно каждый элемент данных в базе данных имеет одну блокировку.

    Типы блокировки: существует два типа блокировки: двоичная блокировка и общая / эксклюзивная блокировка.
    Двоичная блокировка: двоичная блокировка имеет 2 состояния: заблокировано и разблокировано. 1 используется для представления заблокированного состояния, а 0 используется для представления разблокированного состояния. Каждый элемент данных в базе данных имеет отдельную блокировку. Если значение блокировки для элемента a равно 1, это означает, что элемент a не может быть доступен для операции с базой данных. Если значение блокировки для элемента a равно 0, то этот элемент может быть доступен любой операции базы данных, к которой требуется доступ.

    Ниже приведены правила, которым должна подчиняться транзакция. Эти правила применяются диспетчером блокировок.
    (1) Если транзакция t хочет выполнить операции чтения-элемента (a) или записи-элемента (a), то эта транзакция t должна сначала выполнить операцию lock-item (a).
    (2) После завершения всех операций чтения-элемента (а) и записи-элемента (а) транзакция t должна выполнить операцию разблокировать-элемент (а).
    (3) Транзакция t вызовет операцию unlock-item (a) тогда и только тогда, когда она уже удерживает блокировку элемента a.
    (4) Если транзакция t уже удерживает блокировку элемента a, тогда эта транзакция t не будет выполнять операцию lock-item (a).

Напишите свой ответ

Ваш ответ появится после модерации