| Een besturingssysteem (OS) bevat veel componenten die samenwerken om computerhardware en softwarebronnen te beheren. Deze kunnen grofweg worden gecategoriseerd als:
1. Kernel: De kern van het besturingssysteem. Het is de software op het laagste niveau die rechtstreeks samenwerkt met de hardware. De belangrijkste kernelfuncties zijn onder meer:
* Procesbeheer: Processen aanmaken, plannen en beëindigen.
* Geheugenbeheer: Toewijzen en de toewijzing van geheugen aan processen ongedaan maken. Vaak gaat het daarbij om virtueel geheugen.
* Bestandssysteembeheer: Bestanden op opslagapparaten organiseren en openen.
* Apparaatbeheer: Interactie met hardwareapparaten zoals printers, toetsenborden en harde schijven (stuurprogramma's zijn hier een belangrijk onderdeel van).
* Communicatie tussen processen (IPC): Processen met elkaar laten communiceren.
* Beveiliging: Toegang tot systeembronnen controleren.
2. Systeemhulpprogramma's: Dit zijn programma's die helpen bij het beheren en onderhouden van het systeem. Voorbeelden zijn onder meer:
* Bestandsbeheerders: (bijvoorbeeld Windows Verkenner, Finder) voor het navigeren en manipuleren van bestanden.
* Schijfhulpprogramma's: Hulpmiddelen voor het formatteren, controleren en repareren van schijven.
* Netwerkhulpprogramma's: Hulpmiddelen voor het configureren en beheren van netwerkverbindingen.
* Systeemmonitors: Toon het gebruik van systeembronnen (CPU, geheugen, schijf-I/O).
* Hulpprogramma's voor back-up en herstel: Voor het maken van back-ups en het herstellen van gegevens.
* Opdrachtregeltolken (shells): Zorg voor een op tekst gebaseerde interface voor interactie met het besturingssysteem (bijvoorbeeld bash, cmd).
3. Systeembibliotheken: Verzamelingen van vooraf geschreven code die toepassingen kunnen gebruiken om algemene taken uit te voeren. Deze verzorgen vaak interacties op laag niveau met de hardware of het besturingssysteem.
4. API's (Application Programming Interfaces): Deze bieden toepassingen een manier om te communiceren met het besturingssysteem en zijn bronnen. Ze fungeren als tussenpersoon en verbergen de complexiteit van het onderliggende systeem.
5. Apparaatstuurprogramma's: Software waarmee het besturingssysteem kan communiceren met specifieke hardwareapparaten. Elk apparaat (printer, grafische kaart, enz.) heeft meestal een eigen stuurprogramma nodig.
6. Gebruikersinterface (UI): De manier waarop een gebruiker met het besturingssysteem omgaat. Dit kan zijn:
* Opdrachtregelinterface (CLI): Een op tekst gebaseerde interface.
* Grafische gebruikersinterface (GUI): Een visuele interface met vensters, pictogrammen en menu's.
Het is belangrijk op te merken dat de exacte componenten en hun implementatie aanzienlijk variëren tussen verschillende besturingssystemen (Windows, macOS, Linux, enz.). De hierboven beschreven fundamentele rollen zijn echter voor de meesten hetzelfde. |