Микроядро


Микроядро (англ. microkernel) или μ-ядро (англ. μ‑kernel) — ядро операционной системы, реализующее минимальный набор функций.

работают в пространстве пользователя в виде отдельных процессов, взаимодействуют с ядром с помощью системных вызовов, взаимодействуют друг с другом с помощью IPC. В операционной системе с монолитным ядром эти компоненты работают в пространстве ядра в виде потоков ядра.

На процессорах архитектуры x86 используется так называемая кольцевая защита. Процессы пространства пользователя работают на третьем кольце (англ. ring 3), не могут выполнять некоторые действия, доступные на нулевом кольце (англ. ring 0). Ошибка в процессе пространства пользователя в худшем случае приведёт к завершению процесса.

Для того, чтобы микроядерная ОС по скорости не уступала ОС, построенной на базе монолитного ядра, требуется очень аккуратно проектировать разбиение системы на компоненты и стараться минимизировать взаимодействие между ними. Таким образом, основная сложность при создании микроядерных ОС — необходимость очень аккуратного проектирования.

Микроядра условно делят на поколения. Микроядра разных поколений различаются устройством и технологическими решениями.

Микроядра типа ядра ОС Minix и GNU Hurd развиваются гораздо медленнее, чем Linux и ядро систем семейства BSD. По словам создателя Minix 3 Эндрю Таненбаума, он пытается «построить сверхнадёжную систему, которая может использоваться в том числе на серверах, которым необходимы годы безотказной работы»[2].