Geheimen van de pagefile


Veel gebruikers van computers zijn huiverig voor het maken van wijzigingen in de pagefile en het virtueel geheugen en hebben geen idee wat te doen als Microsoft Windows (weer) met de melding komt dat er onvoldoende virtueel geheugen beschikbaar is en vragen zich af waar ze virtueel geheugen kunnen kopen...

Het concept van virtueel geheugen heeft alles te maken met de hoeveelheid intern geheugen (RAM) dat in de computer aanwezig is. Wanneer dit minder is dan de hoeveelheid die Windows eigenlijk nodig heeft gaat het operating system delen van het fysieke geheugen naar de hardeschijf schrijven om op die manier ruimte in het geheugen vrij te maken.

Eigenlijk zijn er dus twee soorten geheugen; Het daadwerkelijke fysieke intern geheugen en het virtuele interne geheugen (de pagefile op de hardeschijf). Dit geheugen wordt gesplitst in kleine "pages" die door het operating system beheerd worden. Het operating system zorgt ervoor dat veel gebruikte "pages" in het fysieke geheugen gehouden worden en andere naar de pagefile op de hardeschijf geschreven worden.  Wanneer een applicatie een "page" nodig heeft die in de pagefile staat wordt er een page fault gegenereerd en wordt de applicatie geblokkeerd totdat de gevraagde "page" vanuit de pagefile in het interne geheugen geladen is.

Het schrijven van pages van en naar de hardeschijf is langzaam. Wanneer u het idee heeft dat een hardeschijf snel is bedenk dan dat deze altijd nog duizend keer langzamer is dan het interne geheugen. Zorg dus dat er voldoende fysiek intern geheugen in uw computer aanwezig is anders zal de computer traag worden.

Het is nu dus duidelijk dat een computer virtueel geheugen nodig heeft om pieken in het gebruik van het geheugen op te kunnen vangen. Maar hoe groot moet dit geheugen zijn ? Bij de installatie van Windows wordt er een pagefile aangemaakt die 1.5 keer zo groot is als de hoeveelheid intern geheugen (RAM) die in de computer aanwezig is. Eigenlijk is dit dus een gok.. Waarom zou ik een pagefile van 12 Gb nodig hebben als ik over een computer beschik die met 8 Gb RAM geheugen is uitgerust ?

Een meer betrouwbare manier om de omvang van de pagefile te bepalen is het gebruik van de process explorer (deze is hier gratis te downloaden). Nadat u deze tool gestart heeft kiest u in het menu voor "view" en dan voor "system information" en verschijnt het volgende scherm:

In deze afbeelding zijn de waarden bij "commit charge" belangrijk. Deze geven namelijk aan hoeveel intern geheugen het systeem gebruikt. Als "commit charge" hoger is dan het beschikbare RAM geheugen zal het systeem de pagefile gaan gebruiken en kan het relatief langzaam worden.

Een belangrijke indicator in dit geheel is de "commit peak", dit is de maximale hoeveelheid geheugen die het systeem gebruikt heeft sinds de computer is gestart. Het is dus belangrijk dat de computer al enige tijd draait (en gebruikt is) voordat u de process explorer start, dit is de enigste manier om betrouwbare waarden te achtehalen.

Nu weten we dus hoeveel geheugen (RAM en virtueel geheugen) uw computer nodig heeft en kunt u een beslissing maken hoeveel (duur) geheugen u dient aan te schaffen of (als dit een heel prijzige oplossing zou worden) hoe groot de pagefile moet zijn (hou er in dit geval wel rekening mee dat u dit, afhankelijk van de snelheid van uw computer,  zal merken in de werking van het systeem).

Om de configuratie van het virtueel geheugen op uw computer te bekijken gaat u naar het configuratiescherm en kiest daar voor systeem en vervolgens voor "advanced configuration settings".

Pieter Janssen
PEJANSSEN.nl