Operativsystemkärna
Från Rilpedia
En operativsystemskärna (engelska kernel "kärna") är den innersta delen av ett operativsystem. Kärnans uppgift är att starta systemet, hantera resurstilldelningen, samt att kommunicera med hårdvaran. Vanligtvis fungerar kärnan som ett lager mellan datorns hårdvara och de processer som körs i datorsystemet. Programmen har i allmänhet inte direkt tillgång till hårdvaran, utan måste gå via kärnan (se HAL). Kärnan har också ofta till uppgift att hålla program åtskilda från varandra så att ett program som kraschar inte nödvändigtvis kraschar andra program. Kärnan tillhandahåller också tjänster så att informationsutbyte skall kunna ske mellan program. Detta kan ske lokalt eller via nätverk.
Innehåll |
Tre vanliga typer av operativsystem
De tre vanligaste typerna av operativsystemskärnor är de monolitiska kärnorna , mikrokärnorna, och hybridkärnorna.
Monolitisk
- Monolitiska kärnor bygger på att hela kärnan fungerar som ett program där alla systemets funktioner finns inkluderade. GNU/Linux och FreeBSD är exempel på operativsystem som bygger på monolitiska kärnor.
Mikrokärna
- Mikrokärnor är uppbyggda av ett stort antal mindre komponenter som kommunicerar mellan varandra och tillåter att komponenter läggs till och tas bort utan att systemet startas om. Operativsystemen GNU/Hurd, QNX och Mac OS X bygger på mikrokärnor.
Hybridkärna
- En annan typ av kärna är hybridkärnan, som finns i till exempel Windows NT. Den liknar mikrokärnan, men de olika processerna körs i delade minnesutrymmen.
Övriga
Exokärna
- En mindre vanlig typ av kärna är exokärnan. Tanken bakom exokärnorna är att operativsystemet inte ska tillhandahålla några som helst abstraktioner - abstraktionerna ska istället implementeras som programbibliotek. Olika typer av program kräver nämligen olika typer av abstraktioner. Exokärnor tillåter därför, till skillnad från de andra kärnorna, att vanliga program kommunicerar direkt med systemets hårdvara. Exokärnans uppgift blir då reducerad till att se till att programmen endast får tillgång till den del av hårdvaran de har rätt till. Exempel på operativsystem som bygger på en exokärna är Exokernel och Nemesis (operativsystem).
Nanokärna