In de context van een besturingssysteem (OS) verwijst gebruikersgeheugen naar het gedeelte van het RAM-geheugen (Random Access Memory) van het systeem dat is toegewezen aan en toegankelijk is voor processen op gebruikersniveau. Dit is in tegenstelling tot kernelgeheugen, de geheugenruimte die door de OS-kernel zelf wordt gebruikt.
Belangrijkste kenmerken van gebruikersgeheugen:
* Beschermd tegen andere processen: Het besturingssysteem maakt gebruik van geheugenbeschermingsmechanismen (zoals segmentatie of paging) om ervoor te zorgen dat het ene gebruikersproces het geheugen van een ander gebruikersproces niet rechtstreeks kan benaderen of wijzigen. Dit voorkomt dat schadelijke software of onbedoelde bugs andere processen of het besturingssysteem beschadigen.
* Adresruimte: Elk gebruikersproces heeft zijn eigen virtuele adresruimte, een reeks adressen die het kan gebruiken. Deze virtuele adresruimte wordt door de geheugenbeheereenheid (MMU) in de CPU toegewezen aan fysiek RAM. Deze mapping wordt doorgaans dynamisch uitgevoerd, waardoor efficiënt gebruik van fysiek geheugen en bescherming tussen processen mogelijk is.
* Beperkte toegang: Gebruikersprocessen hebben doorgaans beperkte toegang tot systeembronnen, inclusief geheugenadressen buiten de toegewezen ruimte. Pogingen om toegang te krijgen tot ongeautoriseerd geheugen resulteren in een schending van de geheugentoegang, wat doorgaans leidt tot een segmentatiefout of een soortgelijke fout die het proces beëindigt.
* Dynamische toewijzing: De hoeveelheid geheugen die aan een gebruikersproces wordt toegewezen, kan tijdens runtime worden aangepast. De geheugenmanager van het besturingssysteem handelt deze toewijzing en deallocatie af op basis van de behoeften van het proces.
* Ruilen en paging: Als fysiek RAM-geheugen onvoldoende is, kunnen delen van het gebruikersgeheugen die momenteel niet worden gebruikt, worden gewisseld naar secundaire opslag (zoals een harde schijf) en indien nodig weer in het RAM worden geladen (paging). Met deze techniek kunnen meer processen worden uitgevoerd dan er fysiek RAM beschikbaar is.
Samenvattend is het gebruikersgeheugen een cruciaal onderdeel van een modern besturingssysteem, dat isolatie, bescherming en efficiënt beheer van de systeembronnen voor programma's op gebruikersniveau biedt. |