Монолитное ядро - Monolithic kernel

Структура монолитного ядра, микроядро и гибридное ядро операционные системы на базе

А монолитное ядро это архитектура операционной системы, в которой вся операционная система работает в пространство ядра. Монолитная модель отличается от других архитектур операционных систем (таких как микроядро архитектура)[1][2] в том смысле, что только он определяет высокоуровневый виртуальный интерфейс над компьютерным оборудованием. Набор примитивов или системные вызовы реализовать все службы операционной системы, такие как процесс управление, параллелизм, и управление памятью. Драйверы устройств могут быть добавлены в ядро ​​как модули.

Загружаемые модули

Модульные операционные системы, такие как ОС-9 и большинство современных монолитных операционных систем, таких как OpenVMS, Linux, BSD, SunOS, AIX, и МУЛЬТИКА может динамически загружать (и выгружать) исполняемые модули во время выполнения.

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

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

Однако в некоторых случаях динамическая загрузка модулей (по мере необходимости) помогает сохранить объем кода, выполняемого в пространство ядра до минимума; например, чтобы минимизировать объем операционной системы для встроенных устройств или устройств с ограниченными аппаратными ресурсами. А именно, незагруженный модуль не нужно хранить в дефицитных оперативная память.

Примеры монолитной архитектуры

Смотрите также

Рекомендации

  1. ^ «Модульное системное программирование в Minix3» (PDF).
  2. ^ «Сервер-Клиент, или многоуровневая структура» (PDF). Дизайн микроядра PARAS. Архивировано из оригинал (PDF) 17 июля 2010 г.. Получено 15 июля 2009.
  3. ^ «Определение ядра».