Микроядро реализует все драйверы как программы пользовательского пространства и реализует основные функции, такие как IPC, в самом ядре. Однако монолитное ядро реализует драйверы как часть ядра (например, работает в режиме ядра).
Я читал некоторые утверждения, что микроядра работают медленнее, чем монолитные ядра, поскольку они должны обрабатывать передачу сообщений между драйверами в пространстве пользователя. Это правда?
В течение долгого времени большинство ядер были монолитными, потому что аппаратное обеспечение было слишком медленным для быстрой работы микроядер. Однако в настоящее время существует много микроядер и гибридных ядер, таких как GNU / Hurd, Mac OS X, линейка Windows NT и т. Д.
Итак, что-нибудь изменилось в производительности микроядра? Эта критика микроядра все еще актуальна сегодня?