Inhoudsopgave:
Definitie - Wat betekent Kernel?
Een kernel is de kerncomponent van een besturingssysteem. Met behulp van interprocess-communicatie en systeemoproepen fungeert het als een brug tussen applicaties en de gegevensverwerking op hardwareniveau.
Wanneer een besturingssysteem in het geheugen wordt geladen, wordt de kernel eerst geladen en blijft deze in het geheugen totdat het besturingssysteem opnieuw wordt afgesloten. De kernel is verantwoordelijk voor taken op laag niveau zoals schijfbeheer, taakbeheer en geheugenbeheer.
Techopedia legt Kernel uit
Een computerkerninterface tussen de drie belangrijkste computerhardwarecomponenten, die diensten levert tussen de applicatie / gebruikersinterface en de CPU, geheugen en andere hardware I / O-apparaten.
De kernel biedt en beheert computerbronnen, waardoor andere programma's deze bronnen kunnen uitvoeren en gebruiken. De kernel stelt ook geheugenadresruimte in voor toepassingen, laadt bestanden met toepassingscode in het geheugen, stelt de uitvoeringsstapel voor programma's in en vertakt zich naar bepaalde locaties in programma's voor uitvoering.
De kernel is verantwoordelijk voor:
- Procesbeheer voor applicatie-uitvoering
- Geheugenbeheer, toewijzing en I / O
- Apparaatbeheer door het gebruik van apparaatstuurprogramma's
- Systeemoproepbeheer, wat essentieel is voor het uitvoeren van kernelservices
Er zijn vijf soorten kernels:
- Monolithische kernels: alle besturingssysteemservices worden uitgevoerd langs de hoofdthread in een monolithische kernel, die zich ook in hetzelfde geheugengebied bevindt, waardoor krachtige en rijke hardwaretoegang wordt geboden.
- Microkernels: definieer een eenvoudige abstractie over hardware die primitieven of systeemaanroepen gebruikt om minimale OS-services te implementeren, zoals multitasking, geheugenbeheer en communicatie tussen processen.
- Hybride kernels: voer een paar services in de kernelruimte uit om de overheadkosten van traditionele microkernels te verminderen, waarbij de kernelcode nog steeds als server in de gebruikersruimte wordt uitgevoerd.
- Nano-kernels: vereenvoudig de geheugenvereiste door services te delegeren, inclusief de basisdiensten zoals interruptcontrollers of timers naar apparaatstuurprogramma's.
- Exo-kernels: wijs fysieke hardwarebronnen zoals processortijd en schijfblok toe aan andere programma's, die kunnen koppelen aan bibliotheekbesturingssystemen die de kernel gebruiken om abstracties van besturingssystemen te simuleren.
