ВУЗ:
Составители:
8
процессы одинаково планируются и используют одни и те же системные вызо-
вы для обмена данными и синхронизации. В монолитных же ОС процессы ядра
и пользовательские процессы по-разному планируются и, чаще всего, исполь-
зуют для взаимодействия различные средства. Таким образом, в микроядерных
архитектурах вертикальное распределение функций операционной системы за-
меняется на горизонтальное. Компоненты, лежащие выше микроядра, исполь-
зуют средства микроядра для обмена сообщениями, но взаимодействуют непо-
средственно.
Достоинства и недостатки. Модули микроядерных ОС хорошо структу-
рированы − диспетчер памяти, файловые системы, драйверы устройств и т.д. −
должны взаимодействовать друг с другом в выделенных точках и с использова-
нием хорошо определенного интерфейса, в полном соответствии с концепция-
ми структурного и модульного программирования. Кроме прочего, это свойст-
во микроядерных систем позволяет естественно использовать их в распреде-
ленных средах.
Еще одним достоинством микроядра является переносимость (поскольку
вся машинно-зависимая часть ОС изолирована в микроядре, для переноса сис-
темы на новый процессор требуется меньше изменений и эти изменения логи-
чески сгруппированы) и масштабируемость (микроядерная организация под-
держивает расширения, опирающиеся на ограниченный набор интерфейсов
микроядра).
К недостаткам микроядерной архитектуры можно отнести тот факт, что
пересылка сообщений осуществляется медленнее обычного вызова системных
функций. Это заставляет разработчиков предпринимать усилия по оптимизации
структуры сообщений, которыми обмениваются модули микроядерной ОС.
Примеры реализаций. Первой из известных коммерческих ОС, последова-
тельно реализующих архитектуру микроядра, была система QNX. Эта система
имеет микроядро размером около 10 Кбайт, включающее средства планирова-
ния и диспетчеризации процессов, межпроцессного взаимодействия, обработки
прерываний и сетевые службы сетевого уровня, что обеспечивает передачу со-
общений между процессами как в пределах одной машины, так и между маши-
нами в локальной сети. Микроядро QNX состоит из 14 системных вызовов и
может полностью поместиться во внутренний кэш процессора.
QNX разрабатывалась для приложений реального времени, в том числе и
для использования во встраиваемых микропроцессорных системах; но, благо-
даря компактности и фантастической производительности, эта ОС иногда заме-
няет системы общего назначения, например, на сильно загруженных серверах
телеконференций.
Микроядро использует ряд других современных и будущих ОС, напри-
мер, UNIX System V R4, Workplace OS фирмы IBM, проект HURD и разрабаты-
ваемая новая версия BSD UNIX.
Существует несколько общедоступных (public domain) реализаций мно-
гопроцессорного микроядра, например, разработанное в Университете Беркли
Страницы
- « первая
- ‹ предыдущая
- …
- 6
- 7
- 8
- 9
- 10
- …
- следующая ›
- последняя »