Монолитное ядро
Монолитное ядро это такая схема операционной системы, при которой все ее компоненты являются составными частями одной программы, используют общие структуры данных и взаимодействуют друг с другом путем непосредственного вызова процедур. Для монолитной операционной системы ядро совпадает со всей системой (Unix-системы).
Многослойные системы
Можно разбить всю вычислительную систему на ряд более мелких уровней с хорошо определенными связями между ними, так чтобы объекты уровня N могли вызывать только объекты из уровня N-1. Нижним уровнем в таких системах обычно является hardware, верхним уровнем интерфейс пользователя.
Микроядерная архитектура
Операционной системы, когда большинство ее составляющих являются самостоятельными программами, называется микроядерной. В этом случае взаимодействие между ними обеспечивает специальный модуль ядра, называемый микроядром. Микроядро работает в привилегированном режиме и обеспечивает взаимодействие между программами, планирование использования процессора, первичную обработку прерываний, операции ввода-вывода и базовое управление памятью. Остальные компоненты системы взаимодействуют друг с другом путем передачи сообщений через микроядро.
Смешанные системы
Примером смешанного подхода может служить возможность запуска операционной системы с монолитным ядром под управлением микроядра. Так устроены 4.4BSD и MkLinux, основанные на микроядре Mach.
Классификация ОС
1. По числу одновременно выполняемых задач операционные системы могут быть разделены на два класса:
§ многозадачные (мультипрограммные) (ОС Unix, ОС OS/2, ОС MS Windows)
§ однозадачные (например, MS-DOS)
2. По числу одновременно работающих пользователей ОС можно разделить на:
- однопользовательские
- многопользовательские поддерживают одновременно работу нескольких пользователей
По типу доступа к компьютеру
· системы с пакетной обработкой – формирует пакет, который предъявляется ЭВМ. Пользователь не взаимодействует с компьютером.
· Системы с разделением времени (интерактивные), обеспечивают одновременный доступ нескольких пользователей через терминалы. Ресурсы выделяются по очереди. (Windows, Unix)
· Системы реального времени, которые должны обеспечить гарантированное время ответа на внешнее событие (QNX, RSX, Neutrino)
По типу средств вычислительной техники, для управления ресурсами которых предназначена ОС.
· Сетевые ОС – распределение ресурсов между множеством выполняемых в сети процессов. (однопроцессорные, многопроцессорные)
· Распределенные ОС – разделяет работу по различным машинам системы для обработки, заставляет набор сетевых машин работать как виртуальный унипроцессор.
В сетевых операционных системах пользователи, при необходимости воспользоваться ресурсами другого сетевого компьютера, должны знать о его наличии и уметь это сделать. Каждая машина в сети работает под управлением своей локальной операционной системы, отличающейся от операционной системы автономного компьютера наличием дополнительных средств (программной поддержкой для сетевых интерфейсных устройств и доступа к удаленным ресурсам), но эти дополнения существенно не меняют структуру операционной системы.
Распределенная система, напротив, внешне выглядит как обычная автономная система. Пользователь не знает и не должен знать, где его файлы хранятся на локальной или удаленной машине, и где его программы выполняются. Он может вообще не знать, подключен ли его компьютер к сети. Внутреннее строение распределенной операционной системы имеет существенные отличия от автономных систем.