Razlika između mikrokernela i monolitnog jezgra

Autor: Laura McKinney
Datum Stvaranja: 1 Travanj 2021
Datum Ažuriranja: 10 Svibanj 2024
Anonim
Razlika između mikrokernela i monolitnog jezgra - Tehnologija
Razlika između mikrokernela i monolitnog jezgra - Tehnologija

Sadržaj


Kernel je temeljni dio operativnog sustava; upravlja resursima sustava. Kernel je poput mosta između aplikacije i hardvera računala. Jezgro se dalje može svrstati u dvije kategorije, mikrokernel i monolitno jezgro. Microkernel je onaj u kojem se usluge korisnika i usluge kernel čuvaju u zasebnom adresnom prostoru. Međutim, u Monolithic kernel korisnicima i usluge kernel obje se čuvaju u istom adresnom prostoru. Razgovarajmo o još nekoliko razlika između Microkernela i Monolithic kernera uz pomoć tablice za usporedbu, prikazane dolje.

  1. Usporedni grafikon
  2. definicija
  3. Ključne razlike
  4. Zaključak

Usporedni grafikon

Osnove za usporedbumikrokerneluMonolitna jezgra
Osnovni, temeljniU korisničkim uslugama i kernelu mikrokernela usluge se čuvaju u zasebnom adresnom prostoru.I monolitni kernel i korisničke i kernel usluge održavaju se u istom adresnom prostoru.
VeličinaMicrokernel su manje veličine.Monolitna jezgra veća je od mikrokernela.
IzvršenjeSporo izvršenje.Brzo izvršenje.
ProdužnaMikrokernel se lako izvlači.Monolitnu jezgru teško je proširiti.
sigurnostiAko se usluga sruši, to djeluje na rad mikrokernela.Ako se usluga sruši, cijeli sustav se ruši u monolitnoj jezgri.
KodiratiDa biste napisali mikrokernel, potrebno je više koda.Za pisanje monolitnog jezgra potrebno je manje koda.
PrimjerQNX, Symbian, L4Linux, Singularnost, K42, Mac OS X, Integritet, PikeOS, HURD, Minix i Coyotos. Linux, BSD (FreeBSD, OpenBSD, NetBSD), Microsoft Windows (95,98, Me), Solaris, OS-9, AIX, HP-UX, DOS, OpenVMS, XTS-400 itd.


Definicija Microkernela

Microkernel kao jezgra upravlja svim resursima sustava. Ali u mikrohranilicu, the korisničke usluge i the kernel usluge se implementiraju u različitom adresnom prostoru. Korisničke usluge čuvaju se u korisnički adresni prostori kernel usluge drže se ispod kernel adresni prostor, Ovaj smanjuje veličina kernela i dodatno smanjuje veličinu operativnog sustava.

Pored komunikacije između aplikacije i hardvera sustava, mikrokernel pruža minimalne usluge upravljanja procesima i memorijom. Komunikacija između klijentskog programa / aplikacije i usluga koje se izvode u korisničkom adresnom prostoru uspostavlja se prolaskom. Nikada ne komuniciraju izravno. Time se smanjuje brzina izvođenja mikrokernela.

Korisničke usluge su u mikrokernu izolirane od kernel servisa, tako da ako bilo koja korisnička usluga ne uspije, to ne utječe na uslugu kernela i stoga operativni sustav ostati netaknuti, To je jedna od prednosti mikrokernela. Mikrokernel je lako proširivo, Ako se nove usluge dodaju, dodaju se u adresni prostor korisnika i, samim tim, prostor jezgre ne zahtijeva nikakve izmjene. Microkernel je također lako prenosiv, siguran i pouzdan.


Definicija monolitnog jezgra

Monolitna jezgra upravlja sistemskim resursima između aplikacije i hardvera sustava. Ali za razliku od mikrokernela, korisničke usluge i usluge kernel implementirane su u istom adresnom prostoru. To povećava veličinu kernela i dodatno povećava veličinu operacijskog sustava.

Monolitno jezgro omogućava zakazivanje CPU-a, upravljanje memorijom, upravljanje datotekama i druge funkcije operacijskog sustava putem sistemskih poziva. Kako se korisničke usluge i usluge kernel nalaze u istom adresnom prostoru, to rezultira brzim izvršenjem operacijskog sustava.

Jedan od nedostataka monolitne jezgre je ako neki servis ne uspije, srušio se cijeli sustav. Ako treba dodati novu uslugu u monolitnoj jezgri, cijeli operativni sustav treba izmijeniti.

Ključne razlike između mikrokernela i monolitnog jezgra

  1. Osnovna točka na kojoj se razlikuju mikrokernel i monolitna jezgra je ta mikrokernelu implementirati korisničke usluge i usluge kernel u sustav različiti adresni prostori i monolitna jezgra implementirati i korisničke usluge i usluge kernel pod isti adresni prostor.
  2. Veličina mikrokernela je mali jer samo kernel usluge borave u adresnom prostoru jezgre. Međutim, veličina monolitne jezgre je usporedno veći nego microkernel jer i kernel usluge i korisničke usluge borave u istom adresnom prostoru.
  3. Izvođenje monolitne jezgre je brže pošto se komunikacija između aplikacije i hardvera uspostavlja pomoću sistemski poziv, S druge strane, izvršenje mikrokernela je usporiti kao što je uspostavljena komunikacija između aplikacije i hardvera sustava pretjecanje.
  4. Lako je proširiti mikrokernel jer se nova usluga treba dodati u adresni prostor korisnika koji je izoliran od prostora kernele pa jezgru nije potrebno mijenjati. Suprotno je slučaju s monolitnom jezgrom ako se želi dodati nova usluga u monolitno jezgro, tada cijelo jezgro treba izmijeniti.
  5. Microkernel je više siguran nego monolitni kernel kao da usluga ne uspije u mikrokernelu, radni sustav ostaje netaknut. S druge strane, ako servis ne uspije u monolitnom kernelu, cijeli sustav će se pokvariti.
  6. Monolitno projektiranje jezgre zahtijeva manje koda, što dalje dovodi do manje bugova. S druge strane, za izradu mikrokelera potrebno je više koda što dalje dovodi do većih pogrešaka.

Zaključak:

Microkernel je sporiji, ali sigurniji i pouzdaniji od monolitnog jezgra. Monolitna jezgra je brza, ali manje sigurna jer svaki kvar usluge može dovesti do pada sustava.