Лекция: Модели, используемые при разработке ОС WinNT.
ОС — это сложная программа, в которой детали накладываются друг на друга.
Чтобы система могла обеспечивать желаемые возможности, не нарушая цели проекта, необходима унифицирующая модель.
Модель ОС — это каркас, который связывает в единое целое все средства и сервисы.
Структура WinNT основана на комбинации нескольких моделей:
- клиент-сервер. Служит, чтобы предоставить пользователям разные среды ОС (MS-DOS, OS/2, …, POSIX)
- объектная. Служит для унификации управления системными ресурсами и выделения их пользователям
- симметричная мультипроцессорная обработка (SMP). Она максимально использует возможности многопроцессорных машин.
Клиент-серверная модель ОС.
Клиент-сервер — это разделение ОС на несколько процессов, каждый из которых реализует один набор сервисов: распределение памяти, создание процессов, планирование процессов. Каждый сервер (подсистема) выполняется в пользовательском режиме, проверяя в цикле, не обратился ли к нему за обслуживанием какой-либо клиент.
Клиент — это компонент ОС, либо прикладная программа, которая запрашивает выполнение сервиса, посылая серверу сообщение.
Ядро ОС доставляет это сообщение серверу, тот выполняет запрашиваемые действия, после чего ядро возвращает клиенту результаты в виде другого сообщения.
Достоинства:
- Авария одного из серверов не нарушает работы остальных частей ОС.
- Повышается надежность работы ОС.
- Прекрасно соответствует сетевой модели вычислительных систем.
Исполнительная система — это части ОС (часть ядра), в которую входит набор компонентов, реализующих:
- Управление виртуальной памятью.
- Управление объектами (ресурсами).
- Управление вводом/выводом.
- Файловые системы.
- Взаимодействие между процессами.
- Защита от несанкционированного доступа.
Ядро выполняет функции ОС низкого уровня:
- Планирование потоков (процессов).
- Обработка прерываний.
- Многопроцессорная синхронизация.
Объектная модель.
Основная цель при разработке ОС NT — создание программного обеспечения, которое можно было бы легко и дешево изменить.
Объект — это структура данных, физический формат которой скрыт в определении типа. Объект обладает набором свойств, с которыми работает группа сервисов.
Каждый системный ресурс в Windows (файлы, память физические устройства) может совместно использоваться несколькими процессами.
Построение ОС на основе объектов имеет ряд преимуществ:
- Доступ ОС к ресурсам и работа с ними унифицирована.
- Упрощается защита, т.к. для всех объектов она осуществляется одинаково.
Симметричная мультипроцессорная обработка (SMP).
Многозадачность в ОС — это техника, применяемая ОС для использования одного процессора несколькими потоками управления. Если у компьютера имеется больше, чем один процессор, то от модели многозадачности следует перейти к модели мультипроцессорной обработки.
В асимметричной мультипроцессорной модели обработки (ASMP) ОС и устройства ввода/вывода используют один из процессоров (A); другой полностью отдан под пользовательские потоки => нагрузка распределена неравномерно.
В симметричной модели (SMP) ОС выполняется на любом свободном процессоре или на всех процессорах одновременно; пользовательские потоки и устройства ввода/вывода также распределены между процессорами равномерно.
Преимущества SMP:
- Равномерно распределена системная нагрузка.
- Сокращается время простоя из-за неисправностей, т.к. при сбое одного процессора код ОС может использоваться на других.
- Данная модель переносима на другие типы процессоров.
Структура WinNT:
№18