Delen via


Gebruikersmodus en kernelmodus

Een processor op een computer waarop Windows wordt uitgevoerd, werkt in twee verschillende modi: gebruikersmodus en kernelmodus. De processor schakelt tussen deze modi, afhankelijk van het type code dat wordt uitgevoerd. Toepassingen werken in de gebruikersmodus. Kerndeelcomponenten van het besturingssysteem functioneren in kernelmodus. Hoewel veel stuurprogramma's in de kernelmodus werken, kunnen sommigen functioneren in de gebruikersmodus.

Gebruikersmodus

Wanneer u een toepassing in gebruikersmodus start, maakt Windows een proces aan. Dit proces biedt de toepassing een privé-virtuele adresruimte en een privé handletabel. Omdat de virtuele adresruimte van elke toepassing privé is, kan de ene toepassing de gegevens van een andere toepassing niet wijzigen. Elke toepassing wordt geïsoleerd uitgevoerd. Deze aanpak zorgt ervoor dat als een toepassing vastloopt, dit geen invloed heeft op andere toepassingen of het besturingssysteem.

De virtuele adresruimte van een toepassing in de gebruikersmodus is ook beperkt. Een proces dat wordt uitgevoerd in de gebruikersmodus, heeft geen toegang tot virtuele adressen die zijn gereserveerd voor het besturingssysteem. Door de virtuele adresruimte van een toepassing in de gebruikersmodus te beperken, voorkomt u dat de toepassing kritieke besturingssysteemgegevens wijzigt of beschadigt.

Kernelmodus

Alle code die wordt uitgevoerd in de kernelmodus, deelt één virtuele adresruimte. Als gevolg hiervan wordt een stuurprogramma in de kernelmodus niet geïsoleerd van andere stuurprogramma's of het besturingssysteem. Als een stuurprogramma in de kernelmodus per ongeluk naar het verkeerde virtuele adres schrijft, kan dit gegevens in gevaar komen die deel uitmaken van het besturingssysteem of een ander stuurprogramma. Als een stuurprogramma in de kernelmodus vastloopt, loopt het hele besturingssysteem vast.

In het volgende diagram ziet u de communicatie tussen onderdelen van de gebruikersmodus en kernelmodus.

Diagram met de communicatie tussen onderdelen van de gebruikersmodus en kernelmodus in een computersysteem.