- •Основные понятия и определения.
- •Эволюция ос.
- •2.Архитектура ос.
- •3.Микроядерная архитектура эвм.
- •Основные концепции управления ос.
- •4. Процессор. Управление процессами.
- •5.Описатели процесса.
- •6. Классификация ос по признаку поддержки процессов и потоков.
- •6 Марта 2012 г.
- •7. Управление задачами.
- •16 Марта 2012 г.
- •8. Асинхронные параллельные процессы.
- •9.Семафоры.
- •Мониторы.
- •10. Тупики.
- •Управление памятью.
- •11.Физическая память.
- •12.Связное и несвязное распределение памяти.
- •13.Виртуальная память.
- •14. Преобразование адреса виртуальной памяти в реальный адрес осуществляется по схеме:
- •15.Управление виртуальной памятью, стратегии управления.
- •16. Кэширование данных.
- •Принцип действия кэш–памяти.
- •17.Способы отображения оп на кэш-память.
- •18. Ввод/вывод. Управление файлами и файловой системой.
- •19.Логическая организация фс.
- •Логическая организация файлов.
- •20. Физическая организация фс.
- •Права доступа к файлу.
- •Часть 2. Unix
- •Имена файлов.
- •Индексный дескриптор файла и жесткие ссылки.
- •2. Типы файлов.
- •Создание и монтирование фс.
- •Структура фс ext2fs.
- •3.Структура дискового раздела.
- •Индексные дескрипторы файлы и системы адресации файлов.
- •4.Структура системы и ядро классической Unix.
- •5.Управление процессами.
- •История.
- •Часть 3.
- •1.Структура ос Windows.
- •2.Подсистема win32.
- •3.Объекты, менеджер объектов.
- •Объекты ядра.
- •Структура объектов.
- •Описатели объектов.
- •Именование объектов.
- •Совместное использование объектов.
- •Реестр.
- •Поиск файлов по имени.
- •Точки повторного анализа.
- •5.Совместный доступ к файлу.
- •Производительность фс.
- •Надежность фс.
- •Поддержка нескольких фс.
Структура объектов.
Каждый объект имеет заголовок объекта – содержит в себе имя объекта, каталог объекта, информация о защите, квота (устанавливает ограничение на количество процессов), счетчик ссылок, список процессов с открытыми описателями объектов (ссылки на процессы, по умолчанию максимум = 230), тип объекта (содержит имя типа, виды доступа, права доступа, является ли данный объект синхронизируемым или нет, методы: открыть, закрыть, удалить, проверка прав, запрос имени).
Тело объекта специфично для каждого типа объекта и содержит данные объекта.
Методы вызываются диспетчером объектов при создании и уничтожении объекта, при открытии и закрытии описателя объекта, изменении параметров защиты. Кроме того, система позволяет динамически создавать новые типы объектов, при этом требуется, чтобы его метод был зарегистрирован у диспетчера.
Описатели объектов.
Создаются при вызове win32-функций. В случае успешного выполнения создается 64-битное описатель. При этом описатель находится в таблице описателей процессов. Из 64 разрядов 29 используется для ссылки на блок памяти объекта ядра, 3 – для флагов, 32 – для маски прав доступа. Маска прав формируется на этапе создания. По умолчанию описатель передан другому процессу быть не может, тем не менее существует возможность его дублирования. На самом деле win32-функция, создающая объект, возвращает приложению не сам описатель, а индекс в таблице описателей.
Именование объектов.
У каждого объекта есть имя для поиска и установки прав доступа. Пространство имен объектов, как и пространство имен реестров и файлов, организовано в виде дерева. В качестве вершины используется объект «каталог объектов» – включает информацию, необходимую для трансляции имен объектов и указателей на сами объекты.
Совместное использование объектов.
Другим способом получения доступа к существующему объекту является наследование дочерним процессом объектов родительского процесса. Наконец, можно осуществить дублирование описателя с помощью функции Duplicate Handle. Система управляет объектами «файл» отлично ото всех других.
Реестр.
Начиная с Windows 95, появился реестр данных. Реестр – централизованная общесистемная база данных. Для просмотра, модификации данных реестра используются встроенные утилиты, например regedit. Данные реестра хранятся в виде иерархической древовидной структуры, при этом каждый узел называется разделом или ключом. Названия верхних уровней начинаются с символов HKEY. В разделе могут содержаться подразделы. Записи, находящиеся в нижнем разделе, называются параметрами. В реестре содержится 6 корневых разделов:
HKEY_CURRENT_USER
HKEY_USERS
HKEY_CLASSES_ROOT
HKEY_LOCAL_MACHINE
HKEY_CURRENT_CONFIG
HKEY_PERFOMANCE_DATA
Наиболее главным является четвертый раздел.
Пространство имен реестра интегрировано с общим пространством имен ядра. Реестр хранится на диске в виде файлов, которые называются кустами или ульями. Большинство файлов находится в каталоге SystemRoot/System32/config. Большое значение уделяется повышению надежности хранения, для этого ведется протокол модификации кустов. Кроме того используются зеркальные копии критически важных узлов. Описатели кустов можно посмотреть с помощью утилиты handleex.exe, данные доступны через win32-функции. Например, с помощью функции RegOpenKeyEx можно открыть раздел реестра.
29 мая 2012 г.
4.ФС NTFS.
В ОС Windows присутствует система ввода/вывода. Задача этой системы – скрыть особенности работы с дисками и предоставить в распоряжение ФС используемое дисковое пространство в виде непрерывной последовательности блоков фиксированного размера.
Диски разбиваются на блоки размером 512 байт. Принято работать с блоками более крупного размера – кластерами. Размер кластера = размер сектора * кластерный множитель. Величина множителя устанавливается во время форматирования. От размера кластера зависит производительность ОС. Если кластер большой, то возникнет проблема фрагментации. Исследования показали, что оптимальный размер = 1-8 Кб. Существуют кластеры диска (volume cluster), кластеры, принадлежащие файлу (logical cluster). Основная функция ФС – связь символьного имени с блоками диска, принадлежащими файлу. Эта функция реализуется с помощью ссылки из записи каталога о данном файле на запись в таблице, формат которой определяется типом ФС на диске. У FAT имеется таблица размещения файлов, в которой поддерживаются списки кластеров, которые занимает файл. У NTFS существует такая же таблица (MFT). Такая таблица имеет следующую структуру:
18 – Файлы пользователя |
17 – Файлы пользователя |
16 – Файлы пользователя |
15 – Зарезервирован |
14 – Зарезервирован |
13 – Зарезервирован |
12 – Зарезервирован |
11 – Расширения метода данных и квоты |
10 – Преобразование регистра |
9 – Файл описателей защиты |
8 – Список плохих кластеров |
7 – Загрузочный сектор |
6 – Битовый массив учета занятых кластеров |
5 – Битовый массив учета занятых кластеров |
4 – Корневой каталог |
3 – Таблица определения атрибутов |
2 – Файл тома |
1 – Файл журнала для восстановления |
0 – Зеркальная копия MFT |
Вся структура представляется файлом, в котором содержится до 248 записей, размер каждой – 1 Кб. Если файл имеет несколько записей, то первая из них называется базовой. Каждая запись содержит «заголовок» и пары «заголовок атрибуты, значение». Атрибуты бывают 2 типов: если атрибут целиком вмещается в MFT, он считается резидентным, резидентными всегда будут имя файла и стандартная информация; если атрибут помещается в разные блоки диска, а в заголовке хранится информация о его местонахождении, обычно нерезидентные – поток данных файла, индекс.
Битовый массив – представляет набор единиц и нулей, каждому из которых соответствует блоку. Он сам хранится в файле.
Директория или каталог – это файл, имеющий вид таблицы и хранящий список входящих в него файлов и каталогов. Основная задача этих директорий – поддержка иерархической структуры ФС. Ей соответствует 1 запись MFT – имя, метка, размер и ссылка на запись. Пример: стандартная информация – имя файла-каталога – ссылки на записи MFT. Для больших каталогов совокупность записей о файлах не помещается в одну запись MFT и организована в виде В+-дерева. MFT-запись содержит корень дерева, а ветви размещаются в отдельных кластерах.