Мікроядро
З Вікіпедії, безкоштовно encyclopedia
Мікроядро — це мінімальна реалізація функцій ядра операційної системи.
Класичні мікроядра реалізують лише дуже обмежений набір низькорівневих примітивів, або системних викликів, що являють собою базові сервіси операційної системи.
До них належать:
- керування адресним простором оперативної пам'яті
- керування адресним простором віртуальної пам'яті
- керування процесами і потоками
- засоби міжпроцесної взаємодії.
Всі інші сервіси ОС, які в класичних монолітних ядрах ОС реалізуються безпосередньо ядром, в мікроядерній архітектури реалізуються в користувацькому адресному просторі. Програми, що надають такі сервіси, у різних ОС можуть називатися по-різному: сервери, менеджери ресурсів. Прикладами є сервери мережевих протоколів, файлових систем, драйверів пристроїв.
Така конструкція дозволяє збільшити загальну швидкодію і час реакції системи. Невелике ядро може (і часто проектуєтся таким чином) поміститися в кеші процесора.
Недоліки мікроядра: оскільки код ядра виконується у режимі супервізора (привілейованому), а сервіси у режимі користувача (найменш привілейованому), то часто відбувається перемикання контексту; цей факт власне і пояснює труднощі в проектуванні і написанні ядер подібної конструкції. Ці недоліки здатні обійти ядра, побудовані на архітектурі екзоядра, яка є подальшим розвитком мікроядерної архітектури.[джерело?]
Приклади операційних систем на основі мікроядра: QNX, L4 (мікроядро), Minix3, GNU Hurd.