Vad är skillnaden mellan mikrokärn och monolitisk kärna

De huvudskillnad mellan mikrokärnor och monolitisk kärna är att mikrokärnbaserade system har operativsystem och kärnor i separata adressrum medan de monolitiska kärnbaserade systemen har operativsystem och kärnor i samma adressutrymme.

Mikrokernel och monolitisk kärna är två typer av kärnor. Kärnan är kärnan i operativsystemet. Därför finns det ett speciellt minnesområde för att lagra kärnans kritiska kod. Kärnan är en viktig komponent eftersom det upprätthåller hela systemet. Det utför hårdvaru- och processhantering, filhantering och många andra uppgifter.

Viktiga områden som omfattas

1. Vad är Microkernel
     - Definition, Funktionalitet
2. Vad är monolitisk kärna
     - Definition, Funktionalitet
3. Vad är skillnaden mellan mikrokärn och monolitisk kärna
     - Jämförelse av viktiga skillnader

Nyckelbegrepp

Kärnan, Mikrokernel, Monolitisk Kärna, Operativsystem

Vad är Microkernel

Microkernel är en typ av kärna som möjliggör anpassning av operativsystemet. Den körs på privilegierat läge och tillhandahåller adresshantering på låg nivå och Inter Process Communication (IPC). Dessutom finns OS-tjänster som filsystem, virtuell minneshanterare och CPU-schemaläggare ovanpå mikrokärnan. Varje tjänst har sitt eget adressutrymme för att göra dem säkra. Dessutom har applikationerna egna adressrum. Därför finns det skydd bland applikationer, operativsystem och kärnan.

Figur 1: Mikrokärnarkitektur

När applikationen begär operativsystemstjänsterna för en tjänst, kommunicerar operatörstjänsterna med varandra för att tillhandahålla den erforderliga tjänsten till programmet. Här hjälper Inter Process Communication (IPC) att upprätta denna kommunikation. Sammantaget ger mikrokärnbaserat operativsystem en stor nivå av utsträckbarhet. Det är också möjligt att anpassa operativsystemets tjänster beroende på applikationens krav.

Vad är monolitisk kärna

I monolitiska kärnbaserade system har varje applikation ett eget adressutrymme. Därför är varje applikation säker. Kärnan innehåller också alla operativsystem. Därför kan applikationerna begära tjänster från kärnan. Vissa operativsystem är filsystem, CPU Scheduler, nätverksåtkomst, minneshanterare etc. Men OS ligger i ett separat adressutrymme. Därför är den säker från normala applikationer och funktionsfel.

Figur 2: Monolitisk kärnbaserad arkitektur

Om en applikation kräver en tjänst växlar maskinvarans adressutrymme för programmet till maskinvaruadressrummet för operativsystemet för att utföra det.

Skillnad mellan mikrokärnor och monolitisk kärna

Definition

En mikrokärna är en kärntyp som tillhandahåller mekanismer som låg adresshantering, trådhantering och interprocesskommunikation för att implementera ett operativsystem. Däremot är en monolitisk kärna en typ av kärna i operativsystem där hela operativsystemet fungerar i kärnrummet. Dessa definitioner förklarar huvudskillnaden mellan mikrokärnor och monolitisk kärna.

Operativsystem

En anmärkningsvärd skillnad mellan mikrokärnor och monolitisk kärna är att i ett mikrokärnbaserat system är OS-tjänsterna och kärnan separerade. Men i ett monolitiskt kärnsystem innehåller kärnan operativsystemen.

Fart

Hastighet är också en stor skillnad mellan mikrokärnor och monolitisk kärna. Ett mikrokärnsystem är långsamt medan det monolitiska kärnsystemet är snabbt.

misslyckanden

I ett mikrokärnbaserat system påverkar fel i en komponent inte de andra komponenterna. Men i ett monolitiskt kärnbaserat system kommer fel i en komponent att påverka hela systemet. Därför är detta också en viktig skillnad mellan mikrokärnor och monolitisk kärna.

anpassning

En annan skillnad mellan mikrokernel och monolitisk kärna är att det är lättare att lägga till nya funktioner till mikrokärnan. Därför är det mer anpassningsbart. Det är dock svårt att lägga till nya funktioner i den monolitiska kärnan. Därför är det inte anpassningsbart.  

Magnitud

Dessutom är mikrokärnan mindre i storlek medan den monolitiska kärnan är större i storlek.

Slutsats

Mikrokernel och monolitisk kärna är två typer av kärnor. Skillnaden mellan mikrokernel och monolitisk kärna är att de mikrokärnbaserade systemen har operativsystem och kärnor i separata adressutrymmen medan det monolitiska kärnbaserade systemet har operativsystem och kärnor i samma adressutrymme.

Referens:

1. Monolitisk struktur - Georgia Tech - Avancerade operativsystem, Utacity, 23 Feb. 2015, Tillgänglig här.
2. Mikrokärnbaserad OS-struktur - Georgia Tech - Avancerade operativsystem, Utacity, 23 Feb. 2015, Tillgänglig här.