Билет №19. Микроядерная архитектура. Концепция.
Микроядерная архитектура является альтернативой классическому способу по-строения операционной системы. Под классической архитектурой в данном случае понимается структурная организация ОС, в соответствии с которой все основные функции операционной системы, составляющие многослойное ядро, выполняются в привилегированном режиме.
Суть микроядерной архитектуры состоит в следующем. В привилегированном режиме остается работать только очень небольшая часть ОС, называемая микро-ядром. Микроядро защищено от остальных частей ОС и приложений. В состав микроядра обычно входят машинно-зависимые модули, а также модули, выполняющие базовые (но не все) функции ядра по управлению процессами, обработке прерываний, управлению виртуальной памятью, пересылке сообщений и управлению устройствами ввода-вывода, связанные с загрузкой или чтением регистров устройств. Все остальные более высокоуровневые функции ядра оформляются в виде приложений, работающих в пользовательском режиме.
Менеджеры ресурсов, вынесенные в пользовательский режим, называются серве-рами ОС, то есть модулями, основным назначением которых является обслуживание запросов локальных приложений и других модулей ОС. Для реализации микроядерной архитектуры необходимым условием является наличие в операционной системе удобного и эффективного способа вызова процедур одного процесса из другого. Поддержка такого механизма и является одной из главных задач микроядра. Работа микроядерной операционной системы соответствует известной модели клиент-сервер, в которой роль транспортных средств выполняет микроядро.
Преимущества и недостатки микроядерной архитектуры.
Операционные системы, основанные на концепции микроядра, в высокой степени удовлетворяют большинству требований, предъявляемых к современным ОС, обладая переносимостью (весь машинно-зависимый код изолирован в микроядре, поэтому для переноса системы на новый процессор требуется меньше изменений и все они логически сгруппированы вместе), расширяемостью, присущей микроядерной ОС в очень высокой степени, надежностью и создавая хорошие предпосылки для поддержки распределен-ных приложений. За эти достоинства приходится платить снижением произ-водительности, и это является основным недостатком микроядерной архитектуры. При классической организации ОС выполнение системного вызова сопровождается двумя переключениями режимов, а при микроядерной организации - четырьмя.
Таким образом, операционная система на основе микроядра при прочих равных условиях всегда будет менее производительной, чем ОС с классическим ядром. Именно по этой причине микроядерный подход не получил такого широкого распространения, которое ему предрекали.