Функциональная организация типовой многозадачной ОС. Базовые функциональные подсистемы. Ядро и пользовательский слой ОС
Конструктивно ОС может рассматриваться как расширение аппаратуры ПК, то есть как виртуальная машина, обеспечивающая дополнительные и более удобные средства для управления вычислительным процессам. В таком случае ОС делится на:
- ядро– совокупность модулей (или единый модуль) - часть ОС, которая постоянно находится в памяти.
Ядро ОС включает в себя базовые модули, обеспечивающие низкоуровневые услуги ввода – вывода, обработки прерываний, распределения ресурсов и управления памятью. На более высоком уровне находятся модули, отвечающие за управление самой ОС и интерфейс пользователя.
- сервисы ОС – другие модули, которые подгружаются в память по мере необходимости. Выполняют функции ОС, для которых не требуется привилегированный режим. Оформляются в формальных процессах. Они дополняют функции ядра.
АппаратураàСредства аппаратной поддержки ОСàМашинно-зависимые модулиàБазовые механизмы ядраàМенеджеры ресурсовàИнтерфейс системных вызовов
Средства аппаратной поддержки : 1.механизмы привелегий 2.механизмы переключения контекстов процессов 3.средства трансляции адресов TR-TSS 4.защита областей памяти 5.система прерываний 6.системный таймер (источник запросов прерываний)
Машинно-зависимый модуль: низкоуровневая драйверная аппаратура. HAL(hardware abstract layer)- экранирует вышележащие слои ядра от особенностей аппаратуры.(win nt)
Базовые механизмы ядра(исполнительная система). В этом слое выполняется примитивные и наиболее часто повторяющиеся операции ядра по обеспечению процесса. (программное переключение контекста процессов, страничный обмен – paging, свопинг ) Исполнительный механизм самостоятельных решений не имеет.
Менеджеры ресурсов. Общая задача учет и планирование ресурсов.
Интерфейс системных вызовов - это бункер между ядром и приложениями. В направлении к ядру он распознает запросы и передает управление в отдельную ячейку ядру. В обратном направлении возвращает сигнал.
Базовые подсистемы ядра ОС
- Подсистема управления процессами(потоками)
Подсистема управления процессами - главная подсист. Все остальные работают под ее управлением. Функции: 1. создание и инициализация процессов 2. распределение времени ЦП. 3. завершение процессов.
Завершение процесса: 1)Освобождение ЦП, 2)Освобождение памяти, 3)Уменьшение хранящейся информации в системе (удаление записей из таблицы процессов).
- Подсистема управления памятью.
Основные функции: 1)учет памяти.2)выделение памяти процессу 3)перераспределение памяти, 4)освобождение памяти после завершения процесса.5)организация и поддержка виртуальной памяти.6)свопинг – полноразмерный обмен между внешней и оперативной памятью(перемещение данных процесса с диска и наоборот).
- Подсистема управления вводом выводом
Назначение: обеспечение принципа независимости программы от устройства(IOCS)
Содержит интерфейс для взаимодействия пользователя, программ и устройств и буферную память.Сточки зрения доступа к устройствам подсист. упр-я i|o обращ к подсист. управлении уст-вами.
- Подсистема управления устройствами(драйверная подсистема)- набор прог для обслуживания устройств.
Функции: 1. Присоединение и монтирование уст-ва. 2. Инициализирование уст-ва. - приведение в работоспособн. состояние. 3. Упр-е устр-в ( идет опосредовано, драйвер упр-я устр-в через контроллер) 4.свободное перемещение данных. 5. Отсоединеие уст-ва
Система обработки прерываний нах. в теле драйверов.
Файловая подсистема (управление данными)- инструмент, для того чтобы структурировать инф. для пользователя и предоставлять некотор. набор операций для работы с этой инф. Иерархическая, пошаговая, древовидная.