Kernel is een Engels woord dat in de informatica wordt gebruikt om de kern van het besturingssysteem, het belangrijkste onderdeel van een computer.
Een simpele verandering van de Kernel-versie naar een oudere of meer recente versie kan voldoende zijn om problemen op te lossen van: hardware en ook computercompatibiliteit.
Met volledige controle over alles wat met het systeem te maken heeft, is de kernel een van de eerste programma's die tijdens het opstarten wordt geladen. Zodra het begint te draaien, start de Kernel een proces dat de volledige hardware nodig om de computer goed te laten functioneren.
Bovendien verwerkt een kernel invoer- en uitvoerverzoeken van software, en beheert bijvoorbeeld het geheugen en de gebruikte randapparatuur.
Kernelrol
De Kernel, de kern van het systeem, is verantwoordelijk voor: verbind de software naar de hardware. Op deze manier brengt het een effectieve communicatie tot stand tussen de bronnen van het besturingssysteem en beheert het zijn functies.
Zie hieronder de belangrijkste functies van een besturingssysteem, beheerd door de Kernel.
procesmanagement
In een besturingssysteem is het proces een lopend programma. Het procesbeheer dat door de Kernel wordt uitgevoerd, bepaalt welke processen worden uitgevoerd.
Elk van de lopende processen kan de processor meerdere keren in dezelfde seconde binnenkomen en verlaten, waardoor er plaats wordt gemaakt voor een ander proces. De kernel is verantwoordelijk voor het beslissen welke processen aan de processor worden toegewezen.
Omdat het schakelen tussen processen erg snel gaat, kan een programma blijven draaien, zelfs als het niet op de processor staat.
Toegangsmodi
De uitvoering van een proces kan op twee verschillende manieren worden uitgevoerd.
- gebruikersmodus: bestaat uit verschillende subsystemen. Een van hen, inclusief het subsysteem voor de omgeving, voert toepassingen uit die zijn ontworpen voor verschillende soorten besturingssystemen. De gebruikersmodus wordt beschouwd als een niet-bevoorrechte modus. Al de software op deze manier moeten ze verzoeken doen aan de kernel om geprivilegieerde instructies uit te voeren, zoals het maken van processen.
- Kernelmodus: wordt als bevoorrecht beschouwd omdat het toegang heeft tot de hele computer. Wanneer de CPU in de Kernel-modus staat, geeft dit aan dat het een software betrouwbaar en in staat om eventuele instructies uit te voeren.
Zie ook de betekenis van processor.
geheugen management
In de taakbeheerder wordt een deel van het RAM-geheugen (totaal geheugen) toegewezen aan de Kernel.
Tijdens procesbeheer stuurt de Kernel programma's naar een adresruimte. Het deel van het totale geheugen dat is toegewezen aan de Kernel zorgt ervoor dat er altijd geheugen beschikbaar is zodat de hoofdprocessen naar die ruimte worden gestuurd.
De kernel heeft ook de functie om het gedeelte van het geheugen te definiëren waartoe elk proces toegang heeft tijdens zijn werking.
Apparaatbeheer
de kern bedient de randapparatuur die op de computer is aangesloten.
Telkens wanneer een gebruiker een apparaat aansluit (bijvoorbeeld een pen drive, printer, koptelefoon, toetsenbord, muis, enz.), beheert de Kernel het geheugen van dat apparaat en de communicatie met programma's en met de hardware van de computer.
Elk apparaat heeft een schijf die is ontworpen om op een bepaald besturingssysteem te werken. Daarom, een bestuurder ontworpen voor Windows werkt bijvoorbeeld niet op een MAC.
O bestuurder De functie van elk apparaat is om een soort vertaling uit te voeren van opdrachten die worden uitgevoerd tussen een bepaald elektronisch apparaat en het besturingssysteem van de computer.
De services van een besturingssysteem zijn toegankelijk via een gebruikersinterface genaamd schelp, wat in het Engels "schelp" betekent. De naam is te danken aan het feit dat de schelp de buitenste laag zijn, rond de kern.
Zie de betekenis van koppel.
systeemoproepen
Systeemoproepen zijn specifieke functies die beschikbaar zijn voor computerprogramma's die in de gebruikersmodus worden gebruikt. Ze worden gebruikt om de kern van het besturingssysteem van een computer aan te roepen, zodat het bepaalde actie uitvoeren.
Deze functies zijn vaak complex en gebruiken functies waar de gemiddelde gebruiker geen toegang toe heeft.
Hieronder staan enkele voorbeelden van Windows-systeemaanroepen en de bijbehorende Linux-kernel.
ramen | Linux | Omschrijving |
---|---|---|
dichtbij handvat |
dichtbij |
bestand sluiten |
Bestand maken | Open | bestand maken |
Verwijder bestand | ontkoppelen | Verwijder bestand |
AfsluitenProces | Uitgang | Een proces en al zijn segmenten beëindigen |
GetLocalTime | team | Huidige locatie, datum en tijd ophalen |
meer weten over ramen.
Kerneltypen
Wat de architectuur betreft, kan de kern van een besturingssysteem zijn: monolithisch, hybride of wees een microkern.
monolithisch
Apparaatstuurprogramma's en kernextensies draaien in de kernruimte, met volledige toegang tot de hardware.
Omdat alle modules in dezelfde adresruimte draaien, kan het hele systeem worden beïnvloed als er een fout optreedt in een van deze ruimtes.
Voorbeelden van monolithische: Linux, BSD, MS-DOS en Solaris.
Linux is een van de meest populaire monolithische kernels. Leuk vinden software gratis en draagbaar als het is, Linux heeft het voordeel dat het op tientallen platforms draait, van IBM-computers tot mobiele apparaten, smartphones of iPods.
meer weten over software enhardware.
Microkernel of microkernel
De microkernel, zoals de naam al aangeeft, is een zeer kleine kernel en om deze reden voert het zo min mogelijk processen uit in de Kernel-ruimte. Sommige van deze processen worden uitgevoerd in de gebruikersruimte.
Met het micro-kerneltype Kernel, als er een fout optreedt, herstart dan gewoon de service die het probleem opleverde. Dit voorkomt dat het hele systeem wordt neergehaald (zoals bij de Monolithische Kernel gebeurt).
Voorbeelden van micronuclei: AIX, BeOS, L4, Mach, Minix, MorphOS, QNX, RADIOS, VSTa en GNU Hurd.
Hybride
Hybride systemen worden beschouwd als systemen die werken met een middenweg in vergelijking met monolithische en micronucleussystemen. De hybride combineert stabiliteit en veiligheid van microkernels met monolithische prestaties.
De hybride kernel is vergelijkbaar met een microkernel, maar heeft code ("niet-essentiële") in de kernelruimte, zodat de uitgevoerde bewerkingen sneller zijn.
Voorbeelden van hybriden: AmigaOS, Android, Chrome, Macintosh, webOS, Windows, OSX en Xinu.
de kern van Android is gebouwd vanuit Linux. Niet iedereen beoordeelt echter de Android zoals Linux omdat ze denken dat het alleen op Linux is gebaseerd, maar niet Linux zelf.
meer weten over Android.