и даже правильность работы самой
и даже правильность работы самой операционной системы.
Микроядро, обладающее небольшим набором API (микроядро OSF
обеспечивает около 200 системных вызовов, а крохотное микроядро
QNS - всего лишь 14), увеличивает шансы получения качественных
программ. Конечно, этот компактный интерфейс облегчает жизнь
только системных программистов; прикладной программист по
прежнему должен бороться с сотнями вызовов.
2.3 Разделение функций
Основным принципом организации микроядерных ОС является включение
в состав микроядра только тех функций, которым абсолютно
необходимо выполнять в режиме супервизора и в защищенной памяти.
Обычно в микроядро включаются машинно-зависимые программы
(включая поддержку мультипроцессорной работы), некоторые функции
управления процессами, обработка прерываний и поддержка пересылки
сообщений.
Во многих случаях в микроядро включается функция планирования
процессов, но в реализации Mach компании IBM планировщик
процессов размещен вне микроядра, а микроядро используется только
для непосредственного управления процессами. Конечно, при этом
требуется тесное взаимодействие внешнего планировщика и входящего
в состав ядра диспетчера.
В некоторых реализациях (например, в реализации OSF) в микроядро
помещаются драйверы устройств. В реализациях IBM и Chorus
драйверы размещаются вне микроядра, но для регулирования режимов
разрешения и запрещения прерываний часть программы драйвера
выполняется в пространстве ядра. В NT драйверы устройств и другие
функции ввода-вывода выполняются в пространстве ядра, но реально
используют ядро только для перехвата и передачи прерываний.
Следует заметить, что оба подхода допускают динамическое
подключение драйверов к системе и их отключение.
Однако имеются другие доводы в пользу выделения драйверов из
состава микроядра. Например, поскольку во многих случаях драйверы
могут не зависеть от особенностей аппаратуры, такой подход
облегчает переносимость системы.
2.4 Mach и IBM
В разрабатывавшейся компанией IBM ОС Workplace (теперь она
Содержание Назад Вперед