ВУЗ:
Составители:
36
«Слоистый» подход тоже не лишен своих проблем. Каждый слой облада-
ет определенными функциональными возможностями, и значительные измене-
ния одного из уровней могут иметь различное влияние (которое трудно предви-
деть) на код в смежных слоях (как верхнем, так и нижнем). Поэтому довольно
трудно реализовать согласованные версии операционной системы, имеющие на
несколько функций больше или меньше, чем в базовой версии. Многочислен-
ные взаимодействия между соседними уровнями усложняют обеспечение безо-
пасности.
Суть философии, лежащей в основе использования микроядра, заключа-
ется в том, что в ядре должны быть только самые важные функции операцион-
ной системы. Работа служб и приложений, не являющихся критическими, осно-
вана на работе микроядра, но выполняются они в пользовательском режиме. И
разделение на то, что находится внутри микроядра, и то, что выносится за его
пределы, зависит от архитектуры системы.
В архитектуре с микроядром традиционное вертикальное расположение
уровней заменяется горизонтальным (рис. 16,6). Внешние по отношению к
микроядру компоненты операционной системы реализуются как обслуживаю-
щие процессы. Между собой они взаимодействуют как равноправные партне-
ры; обычно взаимодействие реализуется с помощью обмена сообщениями, ко-
торые передаются через микроядро. Таким образом, ядро выступает в роли по-
средника: оно подтверждает правильность сообщений, передает их от одного
компонента другому и предоставляет доступ к аппаратному обеспечению. Кро-
ме того, микроядро выполняет защитные функции: оно не пропускает сообще-
ние, если такой обмен не разрешен.
Достоинства архитектуры с микроядром
В их число входят следующее:
• единообразные интерфейсы;
• расширяемость;
• гибкость;
• переносимость;
• надежность;
• поддержка распределенных систем;
• поддержка объектно-ориентированных операционных систем.
Использование микроядра предполагает единообразный интерфейс
(uniform interface) запросов, генерируемых процессами. Процессам не нужно
различать службы, выполняющиеся на уровне ядра и на пользовательском
уровне, потому что ко всем этим службам осуществляется только с помощью
передачи сообщений.
С появлением новых аппаратных устройств или методов программирова-
ния любую операционную систему неизбежно нужно будет пополнять новыми
свойствами. Архитектура с применением микроядра способствует расширяемо-
сти (extensibility) операционных систем, позволяя добавлять в них новые серви-
Страницы
- « первая
- ‹ предыдущая
- …
- 34
- 35
- 36
- 37
- 38
- …
- следующая ›
- последняя »