Архитектурные особенности ОС

Монолитное ядро

Монолитное ядро это такая схема операционной системы, при которой все ее компоненты являются составными частями одной программы, используют общие структуры данных и взаимодействуют друг с другом путем непосредственного вызова процедур. Для монолитной операционной системы ядро совпадает со всей системой (Unix-системы).

Многослойные системы

Можно разбить всю вычислительную систему на ряд более мелких уровней с хорошо определенными связями между ними, так чтобы объекты уровня N могли вызывать только объекты из уровня N-1. Нижним уровнем в таких системах обычно является hardware, верхним уровнем интерфейс пользователя.

Микроядерная архитектура

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

Смешанные системы

Примером смешанного подхода может служить возможность запуска операционной системы с монолитным ядром под управлением микроядра. Так устроены 4.4BSD и MkLinux, основанные на микроядре Mach.

Классификация ОС

1. По числу одновременно выполняемых задач операционные системы могут быть разделены на два класса:

§ многозадачные (мультипрограммные) (ОС Unix, ОС OS/2, ОС MS Windows)

§ однозадачные (например, MS-DOS)

2. По числу одновременно работающих пользователей ОС можно разделить на:

  • однопользовательские
  • многопользовательские поддерживают одновременно работу нескольких пользователей

По типу доступа к компьютеру

· системы с пакетной обработкой– формирует пакет, который предъявляется ЭВМ. Пользователь не взаимодействует с компьютером.

· Системы с разделением времени (интерактивные), обеспечивают одновременный доступ нескольких пользователей через терминалы. Ресурсы выделяются по очереди. (Windows, Unix)

· Системы реального времени, которые должны обеспечить гарантированное время ответа на внешнее событие (QNX, RSX, Neutrino)

По типу средств вычислительной техники, для управления ресурсами которых предназначена ОС.

· Сетевые ОС – распределение ресурсов между множеством выполняемых в сети процессов. (однопроцессорные, многопроцессорные)

· Распределенные ОС – разделяет работу по различным машинам системы для обработки, заставляет набор сетевых машин работать как виртуальный унипроцессор.

В сетевых операционных системах пользователи, при необходимости воспользоваться ресурсами другого сетевого компьютера, должны знать о его наличии и уметь это сделать. Каждая машина в сети работает под управлением своей локальной операционной системы, отличающейся от операционной системы автономного компьютера наличием дополнительных средств (программной поддержкой для сетевых интерфейсных устройств и доступа к удаленным ресурсам), но эти дополнения существенно не меняют структуру операционной системы.

Распределенная система, напротив, внешне выглядит как обычная автономная система. Пользователь не знает и не должен знать, где его файлы хранятся на локальной или удаленной машине, и где его программы выполняются. Он может вообще не знать, подключен ли его компьютер к сети. Внутреннее строение распределенной операционной системы имеет существенные отличия от автономных систем.