
- •Введение
- •Эволюция ос.
- •Классификация ос.
- •Краткий обзор архитектуры 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.
- •Словарь терминов.
Файловые системы.
Файловая система – это часть ОС назначение которой состоит в том, чтобы обеспечить пользователю удобный интерфейс для работы с данными, хранящимися на диске и обеспечить совместное использование файлов несколькими пользователями и процессами. Понятие файловой системы включает:
Совокупность всех файлов на диске.
Набор структур данных, используемых для управления файлами (каталоги, таблицы распределения свободного и занятого пространства).
Комплекс системных программных средств, реализующих управление файлами (создание, удаление, копирование, перенос и тому подобное).
Сектор – аппаратно адресуемые блоки носителя. Размер сектора в системах х86 – 512 байт.
Кластеры – адресуемые блоки, представляющие собой единицу выделения памяти для файла. Размер кластера всегда кратен размеру сектора. Кластер представляет собой цепочку смежных секторов. Кластеры предназначены для более эффективного управления дисковым пространством, то есть разбие диска на кластеры позволяет более эффективно управлять диском.
Использование кластеров большого размера ведёт к неэффективному использованию дискового пространства или внутренней фрагментации.
Внутренняя фрагментация бывает за счёт того, что размер файла редко кратен размеру кластера.
1
00
байт 4 Кб на диске
4 Кб
Метаданные – данные, хранящиеся на дисковом томе, необходимые для поддержки управления файловой системы. Как правило они не доступны приложениям. Например, метаданные содежат информацию определяющую местоположение файлов и каталогов.
ОС Windows 2000, NT поддерживают файловые системы.
CDFS
UDF
FAT12
FAT16
FAT32
NTFS
CDFS (Compact Disk File System).
Определён в 1989 году. Применяется к носителям CD-ROM. В Windows 2000 драйвер хранится в \WinNT\System32\Drivers\cdfs.sys.
Недостатки. Длина имён файлов и каталогов не должна быть больше 32 символов. Не больше 8 уровней вложенности.
UDF (Universal Disk Format).
Принят в 1995 году как формат магнито-оптических носителей. Ограничения. Длина имён файлов и каталогов не должна быть больше 255 символов. Максимальная длина пути 1023. Имена могут включать буквы как верхнего так и нижнего регистров. Разработан с учётом перезаписываемых носителей. Хранится в \WinNT\System32\Drivers\vdfs.sys.
FAT12, FAT16, FAT32.
Является основной файловой системой для Windows 95, 98. Windows NT, 2000 поддерживают эти файловые системы для совместимости с другими ОС и как формат для дискет. Драйвер находится в \WinNT\System32\Drivers\fastfat.sys.
В название каждой версии FAT входит число, которое указывает разрядность, применяемую для идентификации файлов на диске.
FAT12. Размер тома 2 в 12 степени или 4096 кластеров. В Windows 2000 размер кластера изменяется от 512 байт до 8 Кб, следовательно ограничение в размере – 32 Мб, поэтому FAT12 используется как формат для дискет.
FAT16. За счёт 16 разрядного идентификатора может адресовать 65536 кластеров. В Windows 2000 размер кластера изменяется от 512 байт до 64 Кб, поэтому размер тома ограничен 4 Гб.
FAT делится на несколько областей.
FAT16
Загрузочный Первая
таблица Вторая таблица
Корневой каталог Остальные каталоги сектор размещения
файлов размещения файлов и
все файлы
Системная область (не кластеризуется) Область данных, нумерация кластеров
начинается с числа 2