Основное отличие состоит в том, что микроядро (MK) очень мало и предоставляет лишь минимальный набор сервисов. Большинство из того, что обычно считается службами операционной системы, предоставляются отдельными процессами, которые выполняются вне ядра и в менее привилегированном режиме. Эти процессы должны соединяться через IPC, а не просто читать / записывать в любую структуру данных, к которой они хотят получить доступ.
MK, как правило, довольно легко портировать, так как ядро маленькое, усилия по переносу невелики.
Поскольку многие предоставляемые сервисы потенциально работают в пространстве пользователя, а не в пространстве ядра, они не могут легко уничтожить другие процессы. Это плюс безопасности.
Например, часть сетевого стека находилась в пользовательском пространстве и была скомпрометирована, что не могло нарушить другие процессы / задачи. Принимая во внимание, что если эта же часть сетевого стека в монолитном ядре может работать в пространстве ядра, то в случае компрометации она сможет уничтожить другие процессы, поскольку она будет привилегированной.