Разлика између микрокернела и монолитног језгра
Садржај
- Упоредни графикон
- Дефиниција Мицрокернела
- Дефиниција монолитног језгра
- Кључне разлике између микрокернела и монолитног језгра
- Закључак:
Кернел је основни део оперативног система; управља системским ресурсима. Кернел је попут моста између апликације и хардвера рачунара. Језгро се даље може сврстати у две категорије, микрокернел и монолитно језгро. Мицрокернел је онај у којем се корисничке услуге и услуге кернел чувају у засебном адресном простору. Међутим, у Монолитхиц кернел корисницима и услуге кернел-а оба се одржавају у истом адресном простору. Разговарајмо о још неколико разлика између Мицрокернела и Монолитхиц кернера уз помоћ упоредног графикона приказаног доле.
- Упоредни графикон
- Дефиниција
- Кључне разлике
- Закључак
Упоредни графикон
Основе за упоређивање | Мицрокернел | Монолитна језгра |
---|---|---|
Основни | У корисничким сервисима и језгру микрокернела услуге се чувају у засебном адресном простору. | У монолитном кернел-у се и кориснички сервиси и услуге кернел-а чувају у истом адресном простору. |
Величина | Микрокернели су мањег обима. | Монолитна језгра је већа од микрокернела. |
Извршење | Споро извршење. | Брзо извршење. |
Продужетак | Микрокернел се лако извлачи. | Монолитно језгро је тешко проширити. |
Сигурност | Ако неки сервис падне, то утиче на рад микрокернела. | Ако се неки сервис сруши, цео систем се руши у монолитном кернел-у. |
Код | Да бисте написали микрокернел, потребно је више кода. | Да бисте написали монолитно језгро, потребно је мање кода. |
Пример | КНКС, Симбиан, Л4Линук, Сингуларност, К42, Мац ОС Кс, Интегрити, ПикеОС, ХУРД, Миник и Цоиотос. | Линук, БСД (ФрееБСД, ОпенБСД, НетБСД), Мицрософт Виндовс (95,98, Ме), Соларис, ОС-9, АИКС, ХП-УКС, ДОС, ОпенВМС, КСТС-400 итд. |
Дефиниција Мицрокернела
Микрокернел као кернел управља свим системским ресурсима. Али у микрохранилицу корисничке услуге и тхе кернел услуге се имплементирају у различитом адресном простору. Корисничке услуге се чувају кориснички адресни простор, а услуге кернел-а су под кернел адресни простор. Ово смањује величина кернела и додатно смањује величину оперативног система.
Поред комуникације између апликације и хардвера система, микрокернел пружа и минималне услуге управљања процесима и меморијом. Комуникација између клијентског програма / апликације и услуга које се покрећу у корисничком адресном простору успоставља се доношењем. Никада не комуницирају директно. На тај се начин смањује брзина извођења микрокернела.
У микрокернелу, корисничке услуге су изоловане од кернел сервиса, тако да ако било који кориснички сервис не успе, то не утиче на услугу кернел-а, а самим тим и на оперативни систем остају нетакнути. Ово је једна од предности микрокернела. Микрокернел је лако прошириво. Ако се додају нови сервиси, они се додају у адресни простор корисника и, самим тим, простор језгре не захтева никакву измену. Мицрокернел је такође лако преносив, сигуран и поуздан.
Дефиниција монолитног језгра
Монолитно језгро управља системским ресурсима између апликације и хардвера система. Али за разлику од микрокернела, корисничке услуге и услуге кернел имплементиране су у истом адресном простору. То повећава величину кернела и додатно повећава величину оперативног система.
Монолитно језгро омогућава заказивање ЦПУ-а, управљање меморијом, управљање датотекама и друге функције оперативног система путем системских позива. Како се корисничке услуге и услуге кернел-а налазе у истом адресном простору, то резултира брзим извршењем оперативног система.
Један од недостатака монолитног кернела је ако неки сервис не успије, срушио се читав систем. Ако треба додати нову услугу у монолитном кернелу, цео оперативни систем треба да се модификује.
Кључне разлике између микрокернела и монолитног језгра
- Основна тачка по којој се разликују микрокернел и монолитно језгро је та микрокернел имплементирати корисничке услуге и услуге кернел у различити адресни простори и монолитно језгро имплементирати и корисничке услуге и услуге кернел под исти адресни простор.
- Величина микрокернела је мала јер само кернел услуге бораве у адресном простору кернел-а. Међутим, величина монолитног језгра је упоредна веће него микрокернел јер и кернел сервиси и корисничке услуге бораве у истом адресном простору.
- Извођење монолитног језгра је брже пошто се комуникација између апликације и хардвера успоставља помоћу системски позив. Са друге стране, извршење микрокернела је спор пошто се успоставља комуникација између апликације и хардвера система пролази.
- Лако је проширити микрокернел јер се нови сервис мора додати у адресни простор корисника који је изолиран од простора кернела, тако да кернел не треба модификовати. Супротно је случају са монолитним кернел-ом ако треба додати нову услугу у монолитно језгро, а затим цело језгро треба модификовати.
- Мицрокернел је више сигурно него монолитно језгро као да неки сервис не успева у микрокернелу, радни систем остаје нетакнут. С друге стране, ако неки сервис падне у монолитном кернел-у, цијели систем се покварио.
- Монолитно обликовање језгре захтева мање кода, што даље води до мање грешака. С друге стране, за микрокернело потребно је више кода што даље води до већих грешака.
Закључак:
Мицрокернел је спорији, али сигурнији и поузданији од монолитног језгра. Монолитна језгра је брза, али мање сигурна јер сваки квар услуге може довести до пада система.