
- •Введение
- •Эволюция ос.
- •Классификация ос.
- •Краткий обзор архитектуры Windows.
- •Основные системные файлы Windows 95, nt, 2000.
- •Средства аппаратной поддержки управления памятью.
- •Сегментная организация памяти.
- •Страничная или сегментно-страничная организация памяти.
- •Механизмы управления памятью Windows.
- •Раздел 4. В него загружаются ядро Windows nt и драйверы устройств. Этот раздел полностью защищен и по чтению, и по записи. Регионы в адресном пространстве.
- •Системные переменные и операционные системы.
- •Передача физической памяти региону.
- •Механизм выделения страниц физической памяти.
- •Выделение физической памяти под программный код.
- •Атрибуты защиты страниц.
- •Стек потока.
- •Стек потока под Windows 95, 98.
- •Функции компилятора для контроля стека.
- •Кучи (Heaps).
- •Особенности кучи в Windows 95, Windows nt.
- •Структура арены.
- •Рассмотрим функции работы с кучей.
- •Удаление кучи.
- •Выделение блока памяти в определённой куче.
- •Освобождение блока кучи.
- •Дополнительные кучи Win32 процесса.
- •Создание дополнительных куч для эффективного управления памятью.
- •Локальный доступ. Создание дополнительных куч для локализации доступа.
- •Файлы проецируемые в память (фпвп).
- •Проецирование в память exe и dll файлов.
- •Совместное использование статических данных несколькими экземплярами exe и dll модулей.
- •Иерархия функций работы с памятью.
- •Объекты kernel32.Dll.
- •Процессы.
- •Структуры данных процесса.
- •Структура блока pdb.
- •Блок kprocess.
- •Блок переменных окружения (peb).
- •Переменная ядра, связанная с процессами.
- •Последовательность действий, выполняемых функцией CreateProcess.
- •Потоки.
- •Основные функции для работы с потоками.
- •Управляющие структуры ос для работы с потоками.
- •Описание структур управления потоками.
- •Управление потоками.
- •Лекция № 11
- •Функции Win32 связанные с планированием.
- •Учёт квантов времени.
- •Сценарий планирования.
- •Поток простоя.
- •Динамическое повышение приоритета потока.
- •Планирование потоков в системах с симметричной мультипроцессорной системой (smp).
- •Синхронизация.
- •Синхронизация потоков без использования объектов синхронизации.
- •Синхронизация потоков.
- •Критические секции.
- •Работа потока с несколькими критическими секциями.
- •Синхронизация объектов.
- •События со сбросом вручную.
- •События с автоматическим сбросом.
- •Модули.
- •Структура imte.
- •Структура modref.
- •Файлы. Формат pe файла.
- •Особенности ре формата:
- •Заголовок ре файла.
- •Основные секции исполняемого файла.
- •.Idata bfc0847d .Text jmp dword ptr [00040042 … call 00014408 (Вызов GetMessage) Прикладная программа
- •Импортирование ре файлов.
- •Эскпорт ре файлов.
- •Лекция № 15
- •Ресурсы ре файла.
- •Базовые поправки ре файла.
- •Файловые системы.
- •Загрузочный сектор.
- •Особенности ntfs.
- •Новые возможности ntfs.
- •Структура ntfs на диске.
- •Кластеры.
- •Главная таблица файлов.
- •Структура файловых ссылок.
- •Записи о файлах.
- •Индексация имён файлов.
- •Битовая карта.
- •Восстанавливаемость ntfs.
- •Журнал транзакций.
- •Записи контрольной точки.
- •Восстановление данных в ntfs.
- •Проход повтора.
- •Проход отмены.
- •Отказоустойчивость ntfs.
- •Словарь терминов.
Восстановление данных в ntfs.
При выполнении операций NTFS ведёт две таблицы, которые записываются в журнал транзак-ций одновременно с записью контрольной точки. Эти таблицы следующие.
Таблица транзакций. Предназначена для отслеживания транзакций, которые были начаты, но ещё не завершены. Подоперации этих транзакций при восстановлении должны быть удалены.
Таблица изменённых страниц. Содержит информацию о том, какие страницы кэша содержат изменения структуры файловой системы ещё не записанные на диск.
Каждые 5 секунд NTFS помещает в журнал транзакций запись контрольной точки непосредст-венно перед контрольной точкой записываются эти таблицы. В начале процесса восстановления NTFS обращается к LFS для поиска последней контрольной точки, а следовательно, к последним копиям этих таблиц. Затем NTFS копирует эти таблицы в память. Обычно после последней записи контроль-ной точки в журнале находятся ещё несколько записей модификации. Эти записи в процессе вос-становления надо учитывать. NTFS анализирует записи модификаций после последней контрольной точки и обновляет таблицу транзакций и таблицу изменённых страниц.
При восстановлении тома NTFS выполняет три прохода по журналу транзакций, загружая журнал транзакций в память при первом проходе. Проходы:
Анализ.
Повтор транзакций.
Отмена.
Таблица изменённых
страниц
Запись модификации
Таблица транзакций
Запись контрольной
точки
Запсиь модификации
Начало операции контрольной точки конец операции конец
контрольной точки журнала
При проходе анализа осуществляется поиск до конца журнала. Если запись модификации – это запись подтверждения транзакции, то информация о соответствующей транзакции должна быть уда-лена из таблицы транзакций. Если запись модификации – это запись обновления страницы, то есть запись, которая изменяет структуру файловой системы, то следует внести поправку в таблицу измене-ния страниц, то есть на проходе анализа таблицы приводятся в актуальное состояние. Затем NTFS просматривает обе таблицы для того, чтобы найти номер LSN самой старой записи модификации, регистрирующая операцию, которая не была выполнена над диском.
Надо просмотреть обе таблицы и найти LSN с соответствующим номером.
Проход повтора.
На проходе повтора NTFS сканирует журнал транзакций в прямом направлении, начиная с LSN самой старой записи, которая была обнаружена на проходе анализа. Она ищет записи обновления страницы, содержащей модификатор тома.
Когда NTFS достигнет журнала транзакций, то она после прохода анализа средства отложен-ной записи диспетчера кэша может начать запись.
Проход отмены.
Откатывает неподтверждённые транзакции. В таблице транзакций для каждой незавершённой транзакции хранится LSN.
LSN
4044
LSN
4045
LSN
4046
LSN
4047
LSN
4048
LSN
4049
= Транзакция 1
Транзакция 2
Каждая запись отмены содержит LSN предыдущей транзакции.