Монолитное ядро представляет собой архитектуру операционной системы , в которой вся операционная система работает в пространстве ядра . Монолитная модель отличается от других архитектур операционных систем (таких как архитектура микроядра ) [1] [2] тем, что только она определяет высокоуровневый виртуальный интерфейс над компьютерным оборудованием. Набор примитивов или системных вызовов реализует все службы операционной системы, такие как управление процессами , параллелизм и управление памятью . Драйверы устройств могут быть добавлены в ядро как модули .
Загружаемые модули [ править ]
Модульные операционные системы, такие как OS-9, и большинство современных монолитных операционных систем, таких как OpenVMS , Linux , BSD , SunOS , AIX и MULTICS, могут динамически загружать (и выгружать) исполняемые модули во время выполнения.
Эта модульность операционной системы находится на двоичном (образном) уровне, а не на уровне архитектуры. Модульные монолитные операционные системы не следует путать с архитектурным уровнем модульности, присущим операционным системам сервер-клиент (и их производным, иногда продаваемым как гибридное ядро ), которые используют микроядра и серверы (не путать с модулями или демонами).
С практической точки зрения, динамическая загрузка модулей - это просто более гибкий способ обработки образа операционной системы во время выполнения, в отличие от перезагрузки с использованием другого образа операционной системы. Модули позволяют легко расширять возможности операционных систем по мере необходимости. [3] Динамически загружаемые модули несут небольшие накладные расходы по сравнению со встраиванием модуля в образ операционной системы.
Однако в некоторых случаях динамическая загрузка модулей (по мере необходимости) помогает свести к минимуму объем кода, выполняемого в пространстве ядра ; например, чтобы минимизировать объем операционной системы для встроенных устройств или устройств с ограниченными аппаратными ресурсами. А именно, незагруженный модуль не нужно хранить в дефицитной оперативной памяти .
Примеры монолитной архитектуры [ править ]
- Ядра Unix
- Unix-подобные ядра
- ДОС
- DR-DOS
- MS-DOS
- Microsoft Windows серии 9x ( 95 , 98 , 98 SE , ME )
- FreeDOS
- OpenVMS
- TempleOS
- XTS-400
- z / TPF
См. Также [ править ]
- Exokernel
- Гибридное ядро
- Ядро (информатика)
- Микроядро
- Наноядро
- Дебаты Таненбаума-Торвальдса
Ссылки [ править ]
- ^ "Модульное системное программирование в Minix3" (PDF) .
- ^ «Сервер-клиент, или многоуровневая структура» (PDF) . Дизайн микроядра ПАРАС. Архивировано из оригинального (PDF) 17 июля 2010 года . Проверено 15 июля 2009 года .
- ^ «Определение ядра» .