>Хорошо, возьмем драйвер звуковой карты, к примеру. Предлагаю обсудить цель, общую для монолитного ядра и микро: Работающая стабильно ось с поддержкой оборудования.
Микроядро : Само работает, двайвер постоянно валяется либо перезапускается. Итого звука нет.
Монолит : В самом кривом случае кернел-паник (что не смертельно, ибо всё останется живым после рестарта) итог 1 - звука нет.
Выход для обоих осей одинаков : не тулить кривой драйвер ибо толку от него ноль.
Производительность будем сравнивать? Давайте хотя бы приблизительно:
1. Микроядро. Драйвер не имеет прямого доступа к обороудованию, обращается за этим к микроядру. Переключение контекста 1. Латентность самого микроядра 2.
2. Монолит. Тут что драйвер захотел то и сделал, максимально разгрузив CPU, если оборудование девайса позволяет.
Интересно будет посмотреть на производительность когда USB корень задолбит микроядро запросами от мыши и клавиатуры.