Kernel: verschil tussen versies

Uit LinuxMintNL WiKi
Ga naar: navigatie, zoeken
(Uitgebreid)
(Uitgebreid)
Regel 7: Regel 7:
  
 
Er zijn twee soorten kernels, de microkernel en de monolithische kernel, die ongeveer dezelfde taken uitvoeren maar anders zijn ontworpen.
 
Er zijn twee soorten kernels, de microkernel en de monolithische kernel, die ongeveer dezelfde taken uitvoeren maar anders zijn ontworpen.
 +
 +
== Wat is een kernel ==
 +
De kernel is vergelijkbaar met alles wat onder een motorkap van een auto zit. Het zorgt er voor dat de auto (computer) en de apparatuur (hdd, monitor, printer enz.) kan worden gebruikt (groen in de afbeelding).
 +
 +
In en aan de auto kunnen allerlei apparaten en handigheden worden aangebracht. Hiervoor is soms een monteur (sudo of systeem-beheerder) nodig die er voor zorgt dat alles goed in het motordeel (kernel) wordt ingesteld en de veiligheid en werking (cpu. memory en devices) blijft gewaarborgd.
 +
 +
De bestuurder (systeem-gebruiker) kan zelf de auto aankleden en gebruiken (Linux Mint aanpasen). De airco of de ramen regelen, de radio instellen, de verlichting, een stuur- en stoelhoezen enz. en dat gebeurt met de gebruikersinterface Gnome, KDE, Xfce en zelfs Debian (LMDE) die bij Linux Mint kan worden gebruikt. (rood in de afbeelding).
 +
 +
De gebruikersinterface bepaalt dus de details die men kan zien en gebruiken. Een mini (xfce) is niet hetzelfde als een maxi (Cinnamon) en een automaat (Cinnamon) werkt anders dan een schakelversnelling (Mate en LMDE). Daarnaast is er ook nog een hibride (KDE).
 +
 +
'''Advies:''' Pas op met <u>sudo</u> en blijf van het motorcompartiment <u>kernel</u> af als je niet weet wat je doet.
  
 
== Micro kernel ==
 
== Micro kernel ==

Versie van 1 nov 2015 om 20:42

Werkgebied van kernel in computersystem

Een micro kernel is een klein besturings-systeem programma dat de verbinding vormt tussen de basis hardware van een computer en de gebruiker. Deze kernels zijn een vervolg op het UNIX besturings-systeem, en de basis van Linux distributies. Boven de kernel worden de gebruikers-systemen gebouwd b.v. Mint en daarboven de programmatuur van b.v. versie 17 Qiana.

Het wordt ook wel operating systeem (OP) genoemd, maar dat klopt niet helemaal, omdat Mint dan ook in de kernel zou moeten zitten.

Er zijn twee soorten kernels, de microkernel en de monolithische kernel, die ongeveer dezelfde taken uitvoeren maar anders zijn ontworpen.

Wat is een kernel

De kernel is vergelijkbaar met alles wat onder een motorkap van een auto zit. Het zorgt er voor dat de auto (computer) en de apparatuur (hdd, monitor, printer enz.) kan worden gebruikt (groen in de afbeelding).

In en aan de auto kunnen allerlei apparaten en handigheden worden aangebracht. Hiervoor is soms een monteur (sudo of systeem-beheerder) nodig die er voor zorgt dat alles goed in het motordeel (kernel) wordt ingesteld en de veiligheid en werking (cpu. memory en devices) blijft gewaarborgd.

De bestuurder (systeem-gebruiker) kan zelf de auto aankleden en gebruiken (Linux Mint aanpasen). De airco of de ramen regelen, de radio instellen, de verlichting, een stuur- en stoelhoezen enz. en dat gebeurt met de gebruikersinterface Gnome, KDE, Xfce en zelfs Debian (LMDE) die bij Linux Mint kan worden gebruikt. (rood in de afbeelding).

De gebruikersinterface bepaalt dus de details die men kan zien en gebruiken. Een mini (xfce) is niet hetzelfde als een maxi (Cinnamon) en een automaat (Cinnamon) werkt anders dan een schakelversnelling (Mate en LMDE). Daarnaast is er ook nog een hibride (KDE).

Advies: Pas op met sudo en blijf van het motorcompartiment kernel af als je niet weet wat je doet.

Micro kernel

Met een microkernel wordt in de informatica een kernel bedoeld die zeer weinig diensten uitvoert en waarbij het merendeel van de diensten wordt uitgevoerd in de gebruikersmodus (kort gezegd, programma's (diensten) die door de gebruiker zijn geïnstalleerd]. Het woord micro komt van het Oud-Griekse μικρος (micros: "klein"). Daarmee wordt vooral gerefereerd aan het feit dat microkernels zeer klein zijn, in tegenstelling tot de monolithische kernel, waarbij de diensten onder supervisormodus werken.

Servers

Een microkernel maakt gebruik van servers die de eigenlijke interface (verbinding) tussen software en hardware/drivers zijn. Ook kan er vaak een server aanwezig zijn die zorgt dat de drivers goed beheerd worden. Zo zal een driver die crasht dan herstart worden, iets dat bekend is in het Minix-systeem.

Monolithische kernel

Met een monolithische kernel wordt in de informatica een kernel bedoeld waarbij alle diensten, of het merendeel ervan, door de kernel worden uitgevoerd in supervisormodus (hoofdprogramma van een computer). De term monolithisch is afgeleid van de Oud-Griekse woorden monos ("alleen" of "eenzaam") en lithos ("steen" of "gesteente"), omdat de kernel het merendeel van de diensten, zoals toegang tot hardware via een bepaalde interface, geheugenbeheer, etc., zelf afhandelt, in tegenstelling tot de werking van de microkernel.

Linux kernel

Linux kernel

Voor de meeste gebruikers bevindt de kernel zich onder de spreekwoordelijke "motorkap": de gebruiker communiceert met de computer via een gebruikersinterface. De kernel bevat de basisfaciliteiten van Linux, zoals stuurprogramma's (drivers) en systeemaanroepen zoals read() en write(). Deze veelgebruikte basisfuncties zijn nodig om programma's te kunnen schrijven zonder dat de software-ontwikkelaar zich zorgen hoeft te maken over details, bijvoorbeeld hoe een read()-actie (invoer van een toetsenbord of ander invoerapparaat) werkt.

Een kernel is gecompileerd en in een binair bestand (bestaat enkel uit 0 en 1), maar omdat de Linuxkernel vrije software is, is de broncode ervan vrij beschikbaar. Zo kan iedereen met de nodige expertise de kernel veranderen en de veranderde versie beschikbaar stellen voor anderen.

Kwatiteit

Dat dit laatste niet op noemenswaardige schaal gebeurt, wordt gezien als een bevestiging van de kwaliteiten van Linus Torvalds, de hoofdontwikkelaar, maintainer (controleur) en leider van het project. In 1990 begon hij een terminalemulator te ontwikkelen, maar hij wilde meer functies en besefte even later dat hij in feite de kernel voor een besturingssysteem aan het schrijven was. Op 5 oktober 1991 maakte Torvalds de eerste release bekend met een memorabele Usenetposting in de nieuwsgroep comp.os.minix.

Kernel versie

Elke Linuxkernel heeft een nummer die een bepaalde versie aangeeft bij voorbeeld 2.6.39. Hierbij is de tweede een volledige uitgewerkte versie, de zes is voor verbeteringen en reorganisatie en negenendertig zijn tussentijdse aanpassing die meestal te maken hebben met reparaties die niet kunnen wachten zoals beveiliging en belangrijke aanpassingen van de kernel.

Puur en hybride

Microkernels hebben net zoals monolithische kernels het probleem dat zij soms niet geheel een microkernel zijn. Zo zijn er microkernels die de drivers in een modus draaien tussen de supervisormodus en de gebruikersmodus, er zijn er ook die hun schedulers en geheugenbeheer in gebruikersmodus afhandelen. Omdat besturingssystemenkunde niet een volledig vastgelegde kunde is, zijn de grenzen hiervan moeilijk te leggen. In deze wetenschap is het dan ook een geaccepteerde conventie dat microkernels vooral de drivers in gebruikersmodus draaien. Door hiervan af te wijken is het onderscheid tussen puur en hybride ontstaan. Pure monolithische kernels zijn vrij zeldzaam, maar gebruikelijk op embedded platformen zoals ARM.