Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Ответы на вопросы по СПО.docx
Скачиваний:
60
Добавлен:
25.09.2019
Размер:
263.19 Кб
Скачать
  1. Протоколирование транзакций

Все действия выполняемые в рамках в/вдолжны быть зафиксированы. Каждое отдельное действие в рамках в/в называется подоперацией.

Система должна контролировать завершение каждой транзакции, фиксировать факт реального выполнения операций в/в.

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

Практическая реализация протоколирования транзакций.

В основе протоколирования транзакций лежит журнал транзакций, который обрабатывается специальной системной службой-сервис журнала транзакций LFS.

Ф.с. непосредственного доступа к журналу транз не имеет. Все необход действия выполняются только сервисом журнала транз.

Сервис журнала транз выполняет следующие действия:

  1. Помещение в журнал новых записей

  2. Сбрасывание на диск всех записей журнала до некоторого заданного номера

  3. Считывание записи урнала в прямом и обратном направлении.

  1. Журнал транзакций его состав и назначение.

Под транзакцией понимают операцию ввода/вывода, вносящую изменения в системную область диска. Данная операция может быть выполнена либо целиком, либо отменена полностью (частичное выполнение недопустимо). Каждая транзакция состоит из подопераций, которые необходимо выполнить, чтобы операция ввода/вывода состоялась.

В состав NTFS входит журнал транзакций. Журнал транзакций представляет собой некоторый объект, состоящий из:

  1. Область рестарта

  2. Область протоколирования

LCN к.т. – номер записи последней контрольной точки.

Область рестарта хранит номер записи, хранящей информацию о последней контрольной точке.

В области протокола помещается:

1)запись модификации

2)запись контрольной точки

3)запись фиксации транзакции

4)запись таблицы модифицированных таблиц

5)запись таблицы незавершенных транзакций

Запись модификации заносится в журнал транзакций для каждой подоперации и содержит информацию для повтора и для отмены, а так же хранит ссылку на предыдущую операцию. Информация для повтора – это данные о том, что нужно сделать, чтобы повторить подоперацию. Информация для отмены – это данные о том, что нужно сделать, чтобы отменить подоперацию.

Каждая запись журнала транзакций получает свой собственный уникальный номер логической последовательности – LSN. Подоперации одной транзакции связаны в двунаправленный список. Информация для повтора и отмены задается двумя способами:

•на макроуровне (каталог, файл и т.д.);

•на битовом уровне (физический уровень).

Каждые 5 секунд NTFS создает автоматически контрольную точку, запись о которой помещается в область протоколирования.

Запись контрольной точки представляет собой 2 числа: LSN для записи таблицы модифицированных страниц и LCN для записи таблицы незавершенных транзакций.

Запись таблицы независимых транзакций: Хранится в ОП и ее копия помещ в журнал транз во время создания контрольной точки. Как только в обл протоколирования добавл запись фиксации транзакций, информ об этой транзакции удаляется из таблицы независ транзакций.

Запись таблицы модифиц страниц: Все изменения сигнала осуществл в КЭШ. Кэш-память разбита на страницы, в котор вносятся изменения. Табл модиф страниц хранит информ о том, какую страницу в КЭШ изменяла транзакция. Табл модиф страниц хранится в ОП, а ее копия в виде записей создается в журнале транзакций в виде контр точки.

Запись контрольной точки: Создается в журнале каждые 5 с, содержит два числа 1ое-№записи табл независимых транзакций, 2ое-№записи модиф страниц. №записи последней контр точки заносится в область рестарта в виде двух копий.