Redigerer
Linuxkjernen
(avsnitt)
Hopp til navigering
Hopp til søk
Advarsel:
Du er ikke innlogget. IP-adressen din vil bli vist offentlig om du redigerer. Hvis du
logger inn
eller
oppretter en konto
vil redigeringene dine tilskrives brukernavnet ditt, og du vil få flere andre fordeler.
Antispamsjekk.
Ikke
fyll inn dette feltet!
=== Monolittisk kjerne === {{Utdypende|Monolittisk kjerne|mikrokjerne|MINIX}} {{Utdypende|GNU Mach|GNU Hurd|debatten mellom Tanenbaum og Torvalds}} [[Fil:OS-structure.svg|thumb|450px|Strukturen til [[operativsystem]]er som benytter henholdsvis [[monolittisk kjerne|monolittiske kjerner]] og [[mikrokjerne]]r.{{byline|Illustrasjon: Wooptoo|23. juni 2008}}]] Linuxkjernen er en [[monolittisk kjerne]]. Dette betyr at hele operativsystemet kjører i [[kjerne (operativsystem)|operativsystemkjernen]]. I [[mikrokjerne]]r opererer derimot det absolutt minste antall tjenester innenfor kjernen, og andre tjenester bygges lag på lag omkring den. [[Unix]] og [[Unix-lignende]] [[operativsystem]]er benytter stort sett monolittiske kjerner, som er den tradisjonelle arkitekturen. Mikrokjerner oppstod i 1980-årene som en reaksjon på utfordringer som tradisjonelle kjerner hadde i møtet med den teknologiske utvikling. Stadige teknologiske forandringer gjorde at det stadig måtte utvikles nye [[driver|utstyrsdrivere]], nye [[Protokoll (datamaskiner)|nettverksprotokoller]] og nye [[filsystem]]er, såvel som andre deler av operativsystemene. I [[distribuert operativsystem|distribuerte operativsystemer]] var dette spesielt følbart, fordi [[datanett]] kunne bestå av mange ulike [[datamaskinarkitektur]]er, som hver enkelt hadde sin egenarter og gjennomgikk sin egen særegne utvikling, noe som igjen førte til enda mer arbeid for utviklere. Mikrokjerner er implementert ved hjelp av [[modulær programmering]]: Utstyrsdrivere, nettverksprotokoller, filsystemer og flere ting er fjernet fra kjernen. De er isolert i moduler utenfor kjernen, hvor de er lettere å håndtere og modifisere. Forløperen til Linuxkjernen var [[MINIX]], og i begynnelsen var Linuxkjernen avhengig av MINIX under [[oppstart]]. MINIX ble opprinnelig utviklet av [[Andrew S. Tanenbaum]] ved [[Vrije Universiteit Amsterdam]], og første versjon ble lansert i 1987. MINIX er et [[POSIX]]-kompatibelt Unix-lignende operativsystem med en mikrokjerne. Den 29. januar 1992 startet Tanenbaum en [[debatten mellom Tanenbaum og Torvalds|debatt]] på [[Usenet]]s [[diskusjonsgruppe]] <code>[[comp.os.minix]].</code> Der hevdet han at mikrokjerner var overlegen i forhold til monolittiske kjerner, og at Linuxkjernen allerede før lanseringen i 1992 var foreldet. Debatten startet saklig, men utviklet seg etterhvert til en ''«[[Flaming (Internett)|flame war]]»''. Emnet ble tatt opp igjen den 9. mai 2006, og den 12. mai 2006 forklarte Tanenbaum på nytt sin holdning til monolittiske kjerner. Eksempler på mikrokjerner i distribuerte operativsystemer er [[Amoeba 809]], [[Eden (operativsystem)|Eden]], [[Mach (operativsystemkjerne)|Mach]] og [[V system]]. De prosessbaserte distribuerte og Unix-lignende operativsystemene [[LOCUS 845]], [[Accent]] og [[QNX]] hadde derimot en monolittisk kjerne. Windows NT var implementert rundt en mikrokjerne i versjonene 3.1, 3.5 og 3.51. I versjon 4.0 og senere har kjernen vært monolittisk. OS/2, NeXTSTEP, Novell NetWare og det distribuerte operativsystemet [[Plan 9]] benyttet [[hybridkjerne]]r; det samme gjelder Mac OS X. Klassisk MacOS hadde en monolittisk kjerne på [[Motorola 68000-serien]], men benyttet en såkalt [[mikrokjerne|nanokjerne]] (eller «picokjerne»){{#tag:ref|Benevnelsen ''picokjerne'' er noen gang blitt brukt for å ivektlegge den lille størrelsen på en [[mikrokjerne]]. Begrepet ''nanokjerne'' ble første gang brukt av Jonathan S. Shapiro i publikasjonen [http://dl.acm.org/citation.cfm?id=692230 The KeyKOS Nanokernel Architecture] i april 1992. Det var en [[sardonisk]] respons på mikrokjernen [[Mach (operativsystemkjerne)|Mach]], som Shapiro betraktet som monolittisk, ustrukturert og tregere enn de operativsystemkjerner som den hadde til hensikt å erstatte. Senere bruk har som regel ikke oppfattet dette poenget, og begrepene ''picokjerne'' og ''nanokjerne'' har vanligvis (for eksempel i [[Mac OS X]]) samme betydning som mikrokjerne.|group="lower-alpha"|name="nanokjerne"}} på [[PowerPC]]. Mikrokjernen [[GNU Mach]] er [[GNU-prosjektet]]s offisielle operativsystemkjerne. Den har sin forløper i mikrokjernen Mach fra [[Carnegie Mellon University]], og er kjernen i [[GNU Hurd]]. Selv om [[Debian]] offisielt er en [[Linuxdistribusjon]], finnes det en uoffisiell avart ([[Debian GNU/Hurd]]) som kjører GNU Hurd i stedet for Linuxkjernen. Det samme gjelder [[Arch Hurd]] (som er basert på [[Arch Linux]]), [[Guix System Distribution]], tidligere avarter av Bee og [[Gentoo]], og den tidligere distribusjon [[NixOS]]. Linuxkjernen er ikke en del av GNU-prosjektet, men er blitt utviklet ved hjelp av [[GCC|GNU C]] og andre utviklingsverktøy fra GNU. Som allerede nevnt, er den også lisensiert under GNU General Public License versjon 2 (GPLv2), men ikke versjon 3 (GPLv3).
Redigeringsforklaring:
Merk at alle bidrag til Wikisida.no anses som frigitt under Creative Commons Navngivelse-DelPåSammeVilkår (se
Wikisida.no:Opphavsrett
for detaljer). Om du ikke vil at ditt materiale skal kunne redigeres og distribueres fritt må du ikke lagre det her.
Du lover oss også at du har skrevet teksten selv, eller kopiert den fra en kilde i offentlig eie eller en annen fri ressurs.
Ikke lagre opphavsrettsbeskyttet materiale uten tillatelse!
Avbryt
Redigeringshjelp
(åpnes i et nytt vindu)
Denne siden er medlem av 5 skjulte kategorier:
Kategori:Artikkelnavn som lett kan forveksles med andre artikkelnavn
Kategori:Artikler med offisielle lenker og uten kobling til Wikidata
Kategori:Artikler med seksjoner som behøver utvidelse
Kategori:Artikler uten offisielle lenker fra Wikidata
Kategori:CS1-vedlikehold: Uheldig URL
Navigasjonsmeny
Personlige verktøy
Ikke logget inn
Brukerdiskusjon
Bidrag
Opprett konto
Logg inn
Navnerom
Side
Diskusjon
norsk bokmål
Visninger
Les
Rediger
Rediger kilde
Vis historikk
Mer
Navigasjon
Forside
Siste endringer
Tilfeldig side
Hjelp til MediaWiki
Verktøy
Lenker hit
Relaterte endringer
Spesialsider
Sideinformasjon