Atšķirība starp mikrokernelu un monolīto kodolu

Autors: Laura McKinney
Radīšanas Datums: 1 Aprīlis 2021
Atjaunināšanas Datums: 10 Maijs 2024
Anonim
microkernel Vs monolithic kernel [ 6 differences EXPLAINED]
Video: microkernel Vs monolithic kernel [ 6 differences EXPLAINED]

Saturs


Kodols ir operētājsistēmas galvenā sastāvdaļa; tas pārvalda sistēmas resursus. Kodols ir kā tilts starp lietojumprogrammu un datora aparatūru. Kodolu tālāk var iedalīt divās kategorijās: mikrokernelis un monolītais kodols. Mikrokodols ir tāds, kurā lietotāju pakalpojumi un kodola pakalpojumi tiek turēti atsevišķā adrešu telpā. Tomēr gan monolītā kodola lietotāju, gan kodola pakalpojumos abi tiek turēti vienā un tajā pašā adresē. Apskatīsim vēl dažas atšķirības starp mikrokernelu un monolīto kodolu, izmantojot zemāk parādīto salīdzināšanas tabulu.

  1. Salīdzināšanas tabula
  2. Definīcija
  3. Galvenās atšķirības
  4. Secinājums

Salīdzināšanas tabula

Salīdzināšanas pamatsMikrokernelisMonolīts kodols
PamataMikrokodolu lietotāja pakalpojumos un kodolā pakalpojumi tiek turēti atsevišķā adrešu telpā.Monolītā kodola gadījumā gan lietotāja pakalpojumi, gan kodola pakalpojumi tiek turēti tajā pašā adrešu telpā.
IzmērsMikrokabeļu izmēri ir mazāki.Monolīts kodols ir lielāks nekā mikrokernelis.
IzpildeLēna izpilde.Ātra izpilde.
PagarināmsMikrokabeļu kanāls ir viegli pagarināms.Monolīto kodolu ir grūti pagarināt.
DrošībaJa pakalpojums avarē, tas ietekmē mikrokodola darbību.Ja pakalpojums avarē, visa sistēma avarē monolītā kodolā.
KodsLai uzrakstītu mikrokanālu, ir nepieciešams vairāk koda.Lai uzrakstītu monolītu kodolu, ir nepieciešams mazāks kods.
PiemērsQNX, Symbian, L4Linux, Singularity, K42, Mac OS X, Integrity, PikeOS, HURD, Minix un Coyotos. Linux, BSD (FreeBSD, OpenBSD, NetBSD), Microsoft Windows (95,98, Me), Solaris, OS-9, AIX, HP-UX, DOS, OpenVMS, XTS-400 utt.


Mikrokenera definīcija

Mikrokabeļu kodols pārvalda visus sistēmas resursus. Bet mikrokernelī lietotāju pakalpojumi un kodola pakalpojumi tiek ieviesti dažādās adresēs. Lietotāju pakalpojumi tiek turēti lietotāja adreses telpa, un kodola pakalpojumi tiek turēti zem kodola adreses telpa. Šis samazina kodola lielumu un vēl vairāk samazina operētājsistēmas lielumu.

Papildus komunikācijai starp lietojumprogrammu un sistēmas aparatūru mikrokernelis nodrošina minimālus procesu un atmiņas pārvaldības pakalpojumus. Komunikācija starp klienta programmu / lietojumprogrammu un pakalpojumiem, kas darbojas lietotāja adrešu telpā, tiek nodibināta caur to. Viņi nekad mijiedarbojas tieši. Tas samazina mikrokenera izpildes ātrumu.

Mikrokodolā lietotāja pakalpojumi ir izolēti no kodola pakalpojumiem, tāpēc, ja kāds lietotāja pakalpojums neizdodas, tas neietekmē kodola pakalpojumu un līdz ar to arī operētājsistēmu. paliek neskarts. Šī ir viena no mikrokenera priekšrocībām. Mikrokabeļa ir viegli pagarināms. Ja jaunie pakalpojumi ir jāpievieno, tie tiek pievienoti lietotāja adreses telpai, un tādējādi kodola telpai nav vajadzīgas nekādas izmaiņas. Arī mikrokods ir viegli pārnēsājams, drošs un uzticams.


Monolītā kodola definīcija

Monolītais kodols pārvalda sistēmas resursus starp lietojumprogrammu un sistēmas aparatūru. Bet atšķirībā no mikrokerneliem, lietotāja pakalpojumi un kodola pakalpojumi tiek īstenoti vienā un tajā pašā adreses telpā. Tas palielina kodola lielumu un palielina operētājsistēmas lielumu.

Monolītais kodols nodrošina CPU plānošanu, atmiņas pārvaldību, failu pārvaldību un citas operētājsistēmas funkcijas, izmantojot sistēmas zvanus. Tā kā gan lietotāja pakalpojumi, gan kodola pakalpojumi atrodas vienā adreses telpā, tas rada ātru operētājsistēmas izpildi.

Viens no monolītā kodola trūkumiem ir, ja kāds pakalpojums neizdodas, visa sistēma tiek avarēta. Ja monolītā kodolā jāpievieno jauns pakalpojums, jāmaina visa operētājsistēma.

Galvenās atšķirības starp mikrokernelu un monolīto kodolu

  1. Pamatpunkts, no kura izšķir mikrokernelu un monolītu kodolu, ir tas mikrokernelis Vista ieviest lietotāju pakalpojumus un kodola pakalpojumus dažādas adreses un monolīts kodols ieviest gan lietotāju pakalpojumus, gan kodola pakalpojumus zem tā pati adreses telpa.
  2. Mikrokenera lielums ir mazs jo kodola adreses telpā atrodas tikai kodola pakalpojumi. Tomēr monolītā kodola izmērs ir salīdzinoši liels lielāks nekā mikrokods, jo gan kodola pakalpojumi, gan lietotāju pakalpojumi atrodas vienā un tajā pašā adreses telpā.
  3. Monolītā kodola izpilde ir ātrāk jo saziņa starp lietojumprogrammu un aparatūru tiek izveidota, izmantojot sistēmas izsaukums. No otras puses, mikrokenera izpilde ir lēns jo saziņa starp sistēmas lietojumprogrammām un aparatūru tiek izveidota caur garām.
  4. Mikrokodolu ir viegli pagarināt, jo jauns pakalpojums ir jāpievieno lietotāja adrešu telpā, kas ir izolēta no kodola vietas, tāpēc kodolam nav jāveic modifikācijas. Pretējs ir monolītā kodola gadījums, ja monolītā kodolā jāpievieno jauns pakalpojums, tad jāmaina viss kodols.
  5. Mikrokeneļu ir vairāk droša nekā monolīts kodols, it kā pakalpojums neizdodas mikrokodolā, darbības sistēma paliek nemainīga. No otras puses, ja pakalpojums neizdodas monolītā kodola gadījumā, visa sistēma neizdodas.
  6. Monolītā kodola projektēšana prasa mazāk koda, kas vēl vairāk rada mazāk kļūdu. No otras puses, mikrokanālu projektēšanai ir nepieciešams vairāk koda, kas rada vairāk kļūdu.

Secinājums:

Mikrokernelis ir lēnāks, bet drošāks un uzticamāks nekā monolītais kodols. Monolīts kodols ir ātrs, bet mazāk drošs, jo jebkura pakalpojuma kļūme var izraisīt sistēmas avāriju.