Разлика между Microkernel и Monolithic Kernel

Автор: Laura McKinney
Дата На Създаване: 1 Април 2021
Дата На Актуализиране: 10 Може 2024
Anonim
Разлика между Microkernel и Monolithic Kernel - Технология
Разлика между Microkernel и Monolithic Kernel - Технология

Съдържание


Kernel е основната част на операционната система; тя управлява системните ресурси. Kernel е като мост между приложението и хардуера на компютъра. Ядрото може да бъде класифицирано допълнително в две категории, Microkernel и Monolithic Kernel. Microkernel е този, при който потребителските услуги и услугите на ядрото се съхраняват в отделно адресно пространство. Въпреки това, в Monolithic ядрото на потребителите и услугите на ядрото и двете се съхраняват в едно и също адресно пространство. Нека обсъдим още няколко разлики между Microkernel и Monolithic ядрото с помощта на сравнителната диаграма, показана по-долу.

  1. Сравнителна диаграма
  2. дефиниция
  3. Ключови разлики
  4. заключение

Сравнителна диаграма

Основа за сравнениемикрокърнълаМонолитно ядро
ОсновенВ потребителските услуги и ядрото на mikrokernel услугите се съхраняват в отделно адресно пространство.В монолитното ядро ​​както потребителските услуги, така и услугите на ядрото се съхраняват в едно и също адресно пространство.
размерМикрокернелите са с по-малки размери.Монолитното ядро ​​е по-голямо от микрокенералното.
ЕкзекуцияБавно изпълнение.Бързо изпълнение.
разтегателенМикрокернелът е лесно разтегателен.Монолитното ядро ​​е трудно да се разшири.
СигурностАко дадена услуга се срине, това се отразява на работата на microkernel.Ако дадена услуга се срине, цялата система се срива в монолитно ядро.
кодЗа да напишете микрокернел, е необходим повече код.За да напишете монолитно ядро, се изисква по-малко код.
примерQNX, Symbian, L4Linux, Singularity, K42, Mac OS X, Integrity, PikeOS, HURD, Minix и Coyotos. Linux, BSD (FreeBSD, OpenBSD, NetBSD), Microsoft Windows (95,98, Me), Solaris, OS-9, AIX, HP-UX, DOS, OpenVMS, XTS-400 и т.н.


Определение на Microkernel

Microkernel като ядро ​​управлява всички системни ресурси. Но в microkernel, the потребителски услуги и на услуги на ядрото се реализират в различно адресно пространство. Потребителските услуги се съхраняват потребителско адресно пространствои услугите на ядрото се поддържат под адресно пространство на ядрото, Това намалява размера на ядрото и допълнително намалява размера на операционната система.

В допълнение към комуникацията между приложение и хардуер на системата, микрокернелът предоставя минимални услуги за управление на процесите и паметта. Комуникацията между клиентската програма / приложение и услуги, работещи в потребителското адресно пространство, се установява чрез преминаване. Те никога не си взаимодействат директно. Това намалява скоростта на изпълнение на microkernel.

В микрокинела, потребителските услуги са изолирани от услугите на ядрото, така че ако някоя потребителска услуга не успее, това не се отразява на услугата на ядрото и следователно на Операционната система остават незасегнати, Това е едно от предимствата на микрокенера. Микрокернелът е лесен разтегателна, Ако трябва да се добавят новите услуги, те се добавят към адресното пространство на потребителя и следователно пространството на ядрото не изисква никакви изменения. Микрокерелът също е лесно преносим, ​​сигурен и надежден.


Определение на монолитно ядро

Монолитното ядро ​​управлява системните ресурси между приложението и хардуера на системата. Но за разлика от microkernel, потребителските услуги и услугите на ядрото се реализират в едно и също адресно пространство. Това увеличава размера на ядрото, допълнително увеличава размера на операционната система.

Монолитното ядро ​​осигурява планиране на процесора, управление на паметта, управление на файлове и други функции на операционната система чрез системни повиквания. Тъй като потребителските услуги и услугите на ядрото пребивават в едно и също адресно пространство, това води до бързо изпълняваща се операционна система.

Един от недостатъците на монолитното ядро ​​е, ако някоя услуга не успее, цялата система е срината. Ако трябва да се добави нова услуга в монолитно ядро, цялата операционна система трябва да бъде модифицирана.

Ключови разлики между Microkernel и Monolithic Kernel

  1. Основният момент, по който се отличават микрокенерното и монолитното ядро, е това микрокърнъла внедрете потребителски услуги и услуги на ядрото в различни адресни пространства и монолитно ядро внедрете както потребителските услуги, така и услугите на ядрото под същото адресно пространство.
  2. Размерът на microkernel е малък тъй като в адресното пространство на ядрото пребивават само услуги на ядрото. Размерът на монолитното ядро ​​обаче е сравнително сравнителен по-голям отколкото microkernel, тъй като услугите на ядрото и потребителските услуги се намират в едно и също адресно пространство.
  3. Изпълнението на монолитно ядро ​​е по-бързо тъй като комуникацията между приложение и хардуер се установява с помощта на системно повикване, От друга страна, изпълнението на microkernel е бавен тъй като комуникацията между приложение и хардуер на системата се осъществява чрез преминаване.
  4. Лесно е да се разшири microkernel, тъй като трябва да се добави нова услуга в потребителското адресно пространство, което е изолирано от пространството на ядрото, така че ядрото не изисква да бъде модифицирано. Обратно е случаят с монолитното ядро, ако трябва да се добави нова услуга в монолитно ядро, тогава трябва да се модифицира цялото ядро.
  5. Microkernel е повече сигурен отколкото монолитно ядро, сякаш услуга се проваля в microkernel, операционната система остава незасегната. От друга страна, ако услугата се провали в монолитно ядро, цялата система се проваля.
  6. Монолитно проектиране на ядро ​​изисква по-малко код, което допълнително води до по-малко грешки. От друга страна, проектирането на микрокенери трябва повече код, което по-нататък води до повече грешки.

Заключение:

Microkernel е по-бавен, но по-сигурен и надежден от монолитното ядро. Монолитното ядро ​​е бързо, но не толкова сигурно, тъй като всяка повреда на услугата може да доведе до срив на системата.