Гібридне ядро
Гібридне ядро (англ. Hybrid kernel) — модифіковані мікроядра (мінімальна реалізація основних функцій ядра операційної системи комп'ютера), що дозволяють для прискорення роботи запускати «несуттєві» частини в просторі ядра.
Мають «гібридні» переваги та недоліки.
Всі розглянуті підходи до побудови операційних систем мають свої переваги й недоліки. У більшості випадків сучасні операційні системи використовують різні комбінації цих підходів. Так, наприклад зараз, ядро «Linux» є монолітною системою з окремими елементами модульного ядра. При компіляції ядра можна дозволити динамічне завантаження і вивантаження дуже багатьох його компонентів — так званих модулів. У момент завантаження модулю його код завантажується на рівні системи і зв'язується з іншою частиною ядра. Всередині модуля можуть використовуватися будь-які експортовані ядром функції.
Існують варіанти ОС GNU (Debian/GNU Hurd), в яких замість монолітного ядра застосовується ядро Mach (таке ж, як у Hurd), а поверх нього в просторі користувача працюють ті ж самі процеси, які при використанні Linux були б частиною ядра. Іншим прикладом змішаного підходу може служити можливість запуску операційної системи з монолітним ядром під керуванням мікроядра. Так влаштовані Lites та MkLinux, засновані на мікроядрі Mach. Мікроядро забезпечує управління віртуальною пам'яттю і роботу низькорівневих драйверів. Всі інші функції, у тому числі взаємодія з прикладними програмами, здійснюється монолітним ядром. Цей підхід сформувався в результаті спроб використовувати переваги мікроядерної архітектури, зберігаючи за можливості добре налагоджений код монолітного ядра.
Найбільш тісно елементи мікроядерного та монолітного ядер переплетені в ядрі Windows NT. Хоча Windows NT часто називають мікроядерною операційною системою[1], це не зовсім так. Мікроядро NT занадто велике (більше 1 Мбайт, крім того, в ядрі системи знаходиться, наприклад, ще й модуль графічного інтерфейсу), щоб носити префікс «мікро». Компоненти ядра Windows NT розташовуються в витиснюваній пам'яті та взаємодіють один з одним шляхом передавання повідомлень[1][2], як і годиться в мікроядерних операційних системах. У той же час всі компоненти ядра працюють в єдиному просторі адрес і активно використовують спільні структури даних, що властиво операційним системам з монолітним ядром. На думку фахівців Microsoft, причина проста: чисто мікроядерний дизайн комерційно невигідний, оскільки неефективний. Таким чином, Windows NT можна з повним правом назвати гібридною операційною системою.
Змішане ядро, в принципі, повинно об'єднувати переваги монолітного ядра та мікроядра: здавалося б, мікроядро і монолітне ядро — крайнощі, а змішане — золота середина. У них можливо додавати драйвера пристроїв двома способами: і всередину ядра, і в просторі користувача. Але на практиці концепція змішаного ядра часто підкреслює не тільки переваги, але й недоліки обох типів ядер.
- Syllable Desktop
- BeOS
- XNU (засноване на Darwin), використовується в Mac OS X)
- Засновані на BSD операційні системи
- DragonFlyBSD (перше з родини BSD мікроядро, засноване не на Mach)
- NetWare[3]
- Plan 9
- Ядро Windows NT і похідні від нього (використовується Windows NT, 2000, 2003; XP, Vista, Windows 7, Windows 8, Windows 10)
- ↑ а б MS Windows NT Kernel-mode User and GDI White Paper (англ.). Microsoft Corporation. 2007. Архів оригіналу за 12 лютого 2012. Процитовано 1 березня 2007.
- ↑ Silberschatz, Abraham; Peter Baer Galvin and Greg Gagne (2005). Operating System Concepts; 7th Edition (PDF) (англ.). Hoboken, New Jersey: John Wiley & Sons Inc. ISBN 978-0-471-69466-3. Архів оригіналу (PDF) за 15 вересня 2009. Процитовано 13 червня 2010.
- ↑ An Overview of the NetWare Operating System (англ.)
- Linus Torvalds on Real World Tech [Архівовано 2 січня 2007 у Wayback Machine.] (англ.)
- Hybrid Kernel category criticised (англ.)
Це незавершена стаття про операційні системи. Ви можете допомогти проєкту, виправивши або дописавши її. |