АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомДругоеЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция

Проход отмены

Читайте также:
  1. VІ Вимоги до складання та оформлення документації про проходження ВИРОБНИЧОЇ практики
  2. Аргументы в пользу отмены хадисов, запрещающих ношение золота, и их несостоятельность.
  3. Б. Вырост цитоплазмы, покрытый плазмалеммой, в центре проходит микроканалец, в который впадают радиальные микроканальцы
  4. Беспрепятственно проходило между вертикальными столбами, а приманка была
  5. В результаті проходження інтернатури провізор загального
  6. ВИМОГИ ДО ОФОРМЛЕННЯ ЗВІТУ ПРО ПРОХОДЖЕННЯ ПЕРЕДДИПЛОМНОЇ ПРАКТИКИ
  7. Влияние конструкции автомобиля на его проходимость.
  8. Все занятия проходят под присмотром спортивных инструкторов и тренеров. Спортивные снаряды и оборудование новые и качественные.
  9. Все занятия проходят с учетом социально-физиологических потребностей ребенка и адаптированы для детей с различной степенью подготовленности.
  10. Встречи БГ проходят по субботам
  11. Где и как проходили съемки фильма ЛЮСИ
  12. Глава 1.1.Формы записи пассивного проходного четырехполюсника. Способы определения коэффициентов четырехполюсника

Завершив проход повтора, NTFS начинает проход отмены (undo pass), откатывая все транзакции, не подтвержденные к моменту сбоя системы. На рис. 4-7 показаны две транзакции в журнале; транзакция 1 была подтверждена до сбоя системы, а транзакция 2 — нет. NTFS должна отменить транзакцию 2.

Рис. 4-7. Проход отмены.

 

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

В таблице транзакций NTFS для каждой незавершенной транзакции хранится LSN записи модификации, которая была помещена в журнал последней. В данном примере таблица транзакций указывает, что для транзакции 2 это запись с LSN 4049. NTFS выполняет откат транзакции 2, как показано на рис. 4-8 (справа налево).

Рис. 4-8. Отмена транзакции.

 

Каждая запись модификации содержит информацию двух видов: как повторить подоперацию и как отменить ее. После обнаружения LSN 4049 NTFS находит информацию отмены и выполняет отмену, очищая биты с 3 своей битовой карте. Затем NTFS переходит по указателю назад к LSN ИИ который указывает ей удалить новое имя файла из индекса имен файлов. Наконец, NTFS переходит по последнему указателю и освобождает файловую запись MFT, зарезервированную для данного файла, в соответствии с информацией из записи модификации с LSN 4046. На этом откат транзакции 2 закончен. Если имеются другие незавершенные транзакции, то NTFS повторяете же процедуру для их отката. Поскольку отмена транзакций изменяет структуру ФС на томе, NTFS должна протоколировать операцию отмены в журнале транзакций. В конце концов, во время восстановления может снова произойти сбой питания, и NTFS придется выполнить повтор операций отмены.

Когда проход отмены завершен, целостность тома восстановлена. В этот момент NTFS сбрасывает на диск изменения кэша, чтобы гарантировать правильность содержимого тома. Далее NTFS записывает пустую область рестарта. указывающую, что том находится в нормальном состоянии и что, если система сразу же потерпит еще одну аварию, никакого восстановления не потребуется. На этом восстановление завершается.

NTFS не только применяет журнал транзакций для восстановления том„ но также использует те преимущества, которые дает протоколирование транзакций. ФС обязательно содержат большое количество кода для обработки ошибок, возникающих в процессе нормального ввода-вывода. Поскольку NTFS протоколирует каждую транзакцию, модифицирующую структуру тома, она может использовать журнал транзакций для восстановления после ошибок ФС и, таким образом, существенно упростить код обработки ошибок. Ошибка "переполнение журнала транзакций", описанная в разд. 4.2.2.2, — это один из примеров использования протоколирования транзакций для обработки ошибок.

Обратите внимание, что большинство ошибок ввода-вывода, получаемых программой, не являются ошибками ФС и, таким образом, NTFS не может их исправить самостоятельно. Например, получив запрос на создание файла NTFS может начать с создания файловой записи в MFT, после чего ввести им файла в индекс каталога. Однако при попытке выделить по своей битовой карте пространство для нового файла она может обнаружить, что диск переполнен, и запрос на создание файла не удается успешно завершить. В этом случае NTFS использует информацию журнала транзакций для отмены уже выполненной части операции и освобождения структур данных, зарезервированных ею для файла. Затем ошибка "диск переполнен" возвращается вызывающей программе, которая и должна предпринять соответствующие действия.

 


1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 |

Поиск по сайту:



Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Студалл.Орг (0.003 сек.)