Модели, используемые при разработке ОС WinNT.

ОС - это сложная программа, в которой детали накладываются друг на друга.
Чтобы система могла обеспечивать желаемые возможности, не нарушая цели проекта, необходима унифицирующая модель.
Модель ОС - это каркас, который связывает в единое целое все средства и сервисы.
Структура WinNT основана на комбинации нескольких моделей:

Клиент-серверная модель ОС.

Клиент-сервер - это разделение ОС на несколько процессов, каждый из которых реализует один набор сервисов: распределение памяти, создание процессов, планирование процессов. Каждый сервер (подсистема) выполняется в пользовательском режиме, проверяя в цикле, не обратился ли к нему за обслуживанием какой-либо клиент.
Клиент - это компонент ОС, либо прикладная программа, которая запрашивает выполнение сервиса, посылая серверу сообщение.
Ядро ОС доставляет это сообщение серверу, тот выполняет запрашиваемые действия, после чего ядро возвращает клиенту результаты в виде другого сообщения.
Достоинства:

  1. Авария одного из серверов не нарушает работы остальных частей ОС.
  2. Повышается надежность работы ОС.
  3. Прекрасно соответствует сетевой модели вычислительных систем.

Исполнительная система - это части ОС (часть ядра), в которую входит набор компонентов, реализующих:

  1. Управление виртуальной памятью.
  2. Управление объектами (ресурсами).
  3. Управление вводом/выводом.
  4. Файловые системы.
  5. Взаимодействие между процессами.
  6. Защита от несанкционированного доступа.

Ядро выполняет функции ОС низкого уровня:

  1. Планирование потоков (процессов).
  2. Обработка прерываний.
  3. Многопроцессорная синхронизация.

Объектная модель.
Основная цель при разработке ОС NT - создание программного обеспечения, которое можно было бы легко и дешево изменить.
Объект - это структура данных, физический формат которой скрыт в определении типа. Объект обладает набором свойств, с которыми работает группа сервисов.
Каждый системный ресурс в Windows (файлы, память физические устройства) может совместно использоваться несколькими процессами.
Построение ОС на основе объектов имеет ряд преимуществ:

  1. Доступ ОС к ресурсам и работа с ними унифицирована.
  2. Упрощается защита, т.к. для всех объектов она осуществляется одинаково.

Симметричная мультипроцессорная обработка (SMP).
Многозадачность в ОС - это техника, применяемая ОС для использования одного процессора несколькими потоками управления. Если у компьютера имеется больше, чем один процессор, то от модели многозадачности следует перейти к модели мультипроцессорной обработки.

В асимметричной мультипроцессорной модели обработки (ASMP) ОС и устройства ввода/вывода используют один из процессоров (A); другой полностью отдан под пользовательские потоки => нагрузка распределена неравномерно.
В симметричной модели (SMP) ОС выполняется на любом свободном процессоре или на всех процессорах одновременно; пользовательские потоки и устройства ввода/вывода также распределены между процессорами равномерно.
Преимущества SMP:

  1. Равномерно распределена системная нагрузка.
  2. Сокращается время простоя из-за неисправностей, т.к. при сбое одного процессора код ОС может использоваться на других.
  3. Данная модель переносима на другие типы процессоров.

Структура WinNT:

 

№18