Operativsystemkärna




En operativsystemskärna (engelska kernel, som kan översättas som "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.[1] Detta kan ske lokalt eller via datornätverk.




Innehåll






  • 1 Tre vanliga typer av operativsystemskärnor


    • 1.1 Monolitisk


    • 1.2 Mikro


    • 1.3 Hybrid




  • 2 Övriga


    • 2.1 Exokärna




  • 3 Källor





Tre vanliga typer av operativsystemskärnor |


.mw-parser-output table.ambox{margin:0 10%;border-collapse:collapse;background:#fbfbfb;border:1px solid #aaa;border-left:10px solid #608ec2}.mw-parser-output table.ambox th.ambox-text,.mw-parser-output table.ambox td.ambox-text{padding:.25em .5em;width:100%}.mw-parser-output table.ambox td.ambox-image{padding:2px 0 2px .5em;text-align:center;vertical-align:middle}.mw-parser-output table.ambox td.ambox-imageright{padding:2px 4px 2px 0;text-align:center;vertical-align:middle}.mw-parser-output table.ambox-notice{border-left:10px solid #608ec2}.mw-parser-output table.ambox-delete,.mw-parser-output table.ambox-serious{border-left:10px solid #b22222}.mw-parser-output table.ambox-content{border-left:10px solid #f28500}.mw-parser-output table.ambox-style{border-left:10px solid #f4c430}.mw-parser-output table.ambox-merge{border-left:10px solid #9932cc}.mw-parser-output table.ambox-protection{border-left:10px solid #bba}.mw-parser-output .ambox+.ambox,.mw-parser-output .topbox+.ambox,.mw-parser-output .ambox+.topbox{border-top-width:0}.mw-parser-output .messagebox{border:1px solid #aaaaaa;background-color:#f9f9f9;width:80%;margin:0 auto 1em auto;padding:.2em}.mw-parser-output .messagebox.merge{border:1px solid #c0b8cc;background-color:#f0e5ff;text-align:center}.mw-parser-output .messagebox.cleanup{border:1px solid #9f9fff;background-color:#efefff;text-align:center}.mw-parser-output .messagebox.standard-talk{border:1px solid #c0c090;background-color:#f8eaba}.mw-parser-output .messagebox.nested-talk{border:1px solid #c0c090;background-color:#f8eaba;width:100%;margin:2px 4px}




De tre vanligaste typerna av operativsystemskärnor är de monolitiska kärnorna, mikrokärnorna och hybridkärnorna.



Monolitisk |



Huvudartikel: Monolitisk kärna


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.



Mikro |



Huvudartikel: 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.



Hybrid |



Huvudartikel: 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.



Källor |




  1. ^ ”In Computing, What Is a Kernel?”. wiseGEEK. 17 september 2013 (senast uppdaterad). http://www.wisegeek.com/in-computing-what-is-a-kernel.htm. Läst 28 september 2013. 




Popular posts from this blog

Bressuire

Cabo Verde

Gyllenstierna