Het geheugen in uw pc bestaat uit meer dan alleen de RAM-modules op het moederbord. Ook de pagefile speelt een belangrijke rol. Dit bestand op de harde schijf zorgt ervoor dat het schijfgeheugen zo optimaal mogelijk functioneert. In deze Expertcursus gaan we in op de werking en de instellingen van de pagefile en laten we zien hoe u dit bestand optimaliseert voor een nog snellere pc.

Dit artikel bestaat uit drie pagina’s:

Pagina 1

- Paging

- Heen en weer

- Omvang van de pagefile

- Instellen

Pagina 2

- Dynamische pagefile

- Optimale omvang

Pagina 3

- Minimum of maximum?

- Optimale plek

- Fragmentatie

- Defragmentatie

Paging

De pagefile wordt ten onrechte ook wel het wisselbestand (‘swap file’) genoemd. In een wisselbestand worden echter complete processen ondergebracht als er RAM vrijgemaakt moet worden voor andere toepassingen. In Windows 3.1 werd deze methode nog gebuikt, maar sinds de introductie van Windows 95 is dat niet meer nodig. Sindsdien worden slechts delen van een proces (zogeheten ‘pages’ of geheugenpagina’s) naar het schijfgeheugen verplaatst. Dit proces wordt ‘paging’ genoemd, in tegenstelling tot ‘swapping’, waarvan bij het wisselgeheugen sprake was. Een verschil met swapping is dat paging preventief kan gebeuren – zelfs al bij het starten van het besturingssysteem of een applicatie.

Dit verklaart meteen waarom Windows altijd een pagefile zal gebruiken als deze aanwezig is: bij opstarten worden alle benodigde onderdelen van het besturingssysteem en de overige programma’s in hun geheel in het RAM geladen, maar al direct daarna zullen er weer geheugenpagina’s van Windows en andere programma’s vanuit het RAM naar de pagefile worden verplaatst. Op de afbeelding op de vorige pagina ziet u deze situatie: Commit geeft hier het totale geheugen­gebruik direct na opstarten van Windows 7 weer, terwijl onder Physical de op dat moment gebruikte hoeveelheid RAM te zien is. Het verschil geeft aan dat er circa 105 MB van de pagefile in gebruik is.

© PXimport

Direct na opstarten is al ongeveer 105 MB van de pagefile in gebruik.

Heen en weer

Het lijkt misschien vreemd om gegevens al in de veel tragere pagefile te plaatsen op een moment dat er nog voldoende snel RAM beschikbaar is. Maar gegevens die niet direct nodig zijn, zouden in dat geval onnodig ruimte innemen van data die wél direct nodig zijn. Door geheugenpagina’s bij voorbaat al in de pagefile te plaatsen, houdt Windows het gebruikte RAM zo klein mogelijk. Op die manier blijft er een maximale hoeveelheid ongebruikt RAM over om zaken in op te slaan, waarvan aangenomen wordt dat ze binnenkort, en in dat geval ook direct, nodig zullen zijn. Deze standby-gegevens in het RAM vormen de systeemcache, en Windows probeert deze altijd zo groot mogelijk te maken. Hierdoor wordt het werkelijk ongebruikte deel van het RAM zo klein mogelijk of zelfs nihil.

De systeemcache is overigens geen apart deel van het RAM; gegevens kunnen tot de cache of tot het gebruikte geheugen behoren, ongeacht hun plaats in het RAM.

Op basis van het gebruik van de op de pc lopende processen, worden er regelmatig geheugenpagina’s uit de cache naar de pagefile verplaatst om plaats te maken voor nieuwe standby-data, er worden pagina’s uit de pagefile opgehaald en gebruikt door programma’s, om vervolgens weer teruggeplaatst te worden naar de pagefile of om tot de cache te gaan behoren, etcetera. Dit alles om het virtuele geheugen zo efficiënt mogelijk te gebruiken, en zo goed mogelijk te anticiperen op wat de gebruiker gaat doen.

Het virtuele geheugen is overigens niet hetzelfde als de pagefile, wat blijkbaar nogal eens gedacht wordt. Virtueel moet hier opgevat worden als schijnbaar. Met virtueel geheugen wordt de hoeveelheid geheugen bedoeld die Windows (en programma’s) lijken te gebruiken. Het bestaat uit het gebruikte RAM en het gebruikte deel van de pagefile. Dit kan dus meer zijn dan de werkelijk aanwezige hoeveelheid fysiek geheugen. De totaal beschikbare virtuele geheugen bestaat uit de hoeveelheid RAM, aangevuld met de hoeveelheid aan de pagefile toegewezen schijfruimte.

© PXimport

Totaal beschikbaar virtueel geheugen (Limit) en RAM (Physical). Het verschil (hier 2 GB) is toegewezen aan de pagefile.

Omvang van de pagefile

Wanneer u niets aan de standaardinstellingen verandert, bepaalt Windows de omvang van de pagefile zelf. Als u 1 GB RAM of minder hebt, zal er ongeveer anderhalf maal die hoeveelheid schijfruimte aan de pagefile worden toegewezen. De maximaal bruikbare omvang van de pagefile ligt dan op ongeveer drie maal de hoeveelheid RAM. Blijkt de toegewezen grootte onvoldoende, dan kan de pagefile tot die omvang worden uitgebreid, al zal het in de praktijk nauwelijks voorkomen dat de reserveruimte in zijn geheel gebruikt wordt, omdat de meeste pc’s voor die tijd al tegen andere grenzen aan zullen lopen. Een pagefile met een verschillende grootte wordt een dynamische pagefile genoemd. Dit in tegenstelling tot een gefixeerde pagefile, waarbij begingrootte en maximale grootte gelijk zijn.

Hebt u meer dan 1 GB RAM, dan zal Windows ongeveer dezelfde hoeveelheid schijfruimte aan de pagefile toewijzen. De aanbevolen omvang is daarbij steeds anderhalf maal de hoeveelheid RAM.

© PXimport

De toegewezen en aanbevolen hoeveelheid schijfruimte voor de pagefile bij 2 GB RAM.

Instellen

U kunt ook zelf een begin- en maximale grootte voor de pagefile instellen. Hiertoe opent u via Start / Uitvoeren eerst het venster Systeemeigenschappen. Typ sysdm.cpl en klik op OK. Vervolgens gaat u naar het tabblad Geavanceerd, waar u onder Prestaties op de knop Instellingen klikt. Klik op het tabblad Geavanceerd op de knop Wijzigen en haal eventueel het vinkje weg bij Wisselbestandgrootte voor alle stations automatisch beheren, en kies Aangepaste grootte, waarna u de gewenste gegevens invoert. Tenslotte klikt u op Instellen en twee keer op OK. Wanneer u de pagefile verkleint, krijgt u de melding te zien dat u de pc opnieuw op moet starten.

© PXimport

Handmatig instellen van de pagefile.

Pagefile leegmaken

De pagefile kan privacygevoelige gegevens bevatten. Wilt u niet dat deze achterblijven op de harde schijf, dan kunt u de pagefile leeg laten maken bij het afsluiten van de pc. Hiertoe opent u de registereditor. Ga naar Start / Uitvoeren, typ regedit en klik op OK. Navigeert naar HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Session Manager\Memory Management, waar u dubbelklikt op ClearPageFileAtShutdown, vervolgens de waarde 0 in 1 verandert, en na een klik op OK de registereditor sluit. Het afsluiten van Windows zal vervolgens wat langer duren. Het legen van de pagefile levert overigens geen prestatieverbetering op. Het af en toe uitvoeren van deze actie in het kader van opschoonacties is dus niet zinvol.

Dynamische pagefile

Geeft u verschillende waarden op, dan creëert u een dynamische pagefile. Het voordeel van een dergelijke pagefile dat er aanvankelijk weinig schijfruimte wordt gebruikt. Pas als de toegewezen ruimte onvoldoende blijkt, wordt deze uitgebreid. Het nadeel is dat er fragmentatie van de pagefile kan optreden. Wanneer de benodigde extra ruimte niet direct aan de bestaande pagefile toegevoegd kan worden, zullen er elders op de schijf stukjes pagefile worden aangemaakt. In dat geval is de pagefile dus gefragmenteerd. Dit leidt niet direct tot een enorm prestatieverlies, maar een optimale situatie is het niet. Wanneer u uw pc opnieuw opstart, zal de pagefile overigens weer de begingrootte toegewezen krijgen.

Wanneer u dit soort fragmentatie wilt voorkomen, voert u bij zowel de begingrootte als de maximale grootte dezelfde waarde in. Omdat er daarna geen ruimte meer is voor uitbreiding, kan de pagefile hierdoor in ieder geval niet meer gefragmenteerd raken, maar het nadeel is uiteraard dat de toegewezen schijfruimte niet meer is uit te breiden als dit nodig blijkt te zijn. Om te voorkomen dat u op enig moment een waarschuwing over te weinig virtueel geheugen krijgt, dient de pagefile zo groot gemaakt te worden dat hij in alle voorkomende gevallen toereikend zal zijn (zie volgende paragraaf).

© PXimport

Een vaste omvang van de pagefile voorkomt fragmentatie.

Optimale omvang

Het is niet moeilijk de pagefile een omvang te geven die altijd voldoende is: wanneer u bijvoorbeeld een vaste pagefile van 5 GB instelt, is dit altijd genoeg. De kans is echter groot dat er van die 5 GB nooit meer dan een fractie gebruikt zal worden – zeker wanneer u over voldoende RAM beschikt. Maar ook bij weinig RAM, bijvoorbeeld 512 MB, zal 5 GB veel te veel zijn. Tegen de tijd dat er in dat geval één of anderhalf GB van de pagefile in gebruik is, kunt u nauwelijks meer met uw pc werken. Een instelling waarbij de pagefile nodeloos enkele gigabytes te veel in beslag neemt, is uiteraard niet optimaal te noemen, want ook al hebben de prestaties van de pc niets te lijden van een grote of zelfs zeer grote pagefile, u verspilt er natuurlijk wel veel schijfruimte mee.

Een optimale instelling van de pagefile is voor elke pc verschillend, omdat dit afhangt van de hardwareconfiguratie en de werkzaamheden die op de pc worden uitgevoerd. Een uitstekend hulpmiddel om de optimale instelling voor uw pc te bepalen is System Information van Process Explorer (zie kader ‘Process Explorer System Information’.) De werkwijze is eenvoudig: nadat u de pc enige tijd hebt gebruikt (waarbij u het pagefilebeheer aan Windows overlaat), opent u System Information, en kijkt u bij Commit Charge naar de waarde die achter Peak vermeld staat. Dit is het maximum dat de pc tijdens de huidige sessie aan virtueel geheugen heeft verbruikt. In het voorbeeld hieronder ligt deze waarde rond de 2.400 MB. Trekt u hier de hoeveelheid RAM (Total) van af, dan blijkt er dus maximaal ongeveer 300 MB van de pagefile gebruikt te zijn.

© PXimport

Er is ongeveer 300 MB van de pagefile in gebruik geweest.

Process Explorer System Information

Hoewel het geheugengebruik in Windows Taakbeheer wordt weergegeven, geven we de voorkeur aan het wat uitgebreidere System Information, dat een onderdeel van Process Explorer is. Dit programma downloadt u via http://ct.link.ctw.nl/processexplorer. Via het menu View opent u System Information. De belangrijkste info vindt u onder Commit Charge en Physical Memory. Hier worden de volgende zaken aangegeven:

Commit Charge

- Current: de hoeveelheid virtueel geheugen die momenteel gebruikt wordt.

- Limit: de totaal beschikbare hoeveelheid virtueel geheugen.

-Peak: het hoogste virtueel-geheugengebruik sinds het starten van de huidige sessie (in dit geval bereikt tijdens een stress-test, en dus geen gangbare waarde).

Physical Memory

- Total: de aanwezige hoeveelheid bruikbaar fysiek geheugen (RAM).

- Available: de systeemcache plus het ongebruikt geheugen.

- System Cache: geeft hier in Windows 7 RC een foutieve waarde; in Vista en XP wordt de juiste hoeveelheid gegevens in de systeemcache vermeld.

De aan de pagefile toegewezen grootte krijgt u door de waarde achter Limit van de waarde achter Total af te trekken. De waarden worden weergegeven in kilobytes. Deze deelt u door 1.024 om het aantal megabytes te verkrijgen. Nogmaals door 1.024 delen levert het aantal gigabytes op. Verder zijn de waarden Commit en Physical naast de grafieken van belang. Het verschil tussen deze twee geeft aan hoeveel er momenteel van de pagefile in gebruik is.

Minimum of maximum?

Blijkt na enige tijd dat deze hoeveelheid gebruikelijk is op uw pc, dan kunt u de pagefile een vaste grootte van bijvoorbeeld 400 MB toewijzen. Als u op wat meer voorbereid wilt zijn, stelt u dit als begingrootte in, en kiest u voor de maximale grootte het dubbele. Wilt u, om fragmentatie te voorkomen, liever geen dynamische pagefile, dan geeft u zowel de begingrootte als de maximale grootte deze dubbele waarde.

Is de waarde achter Peak voortdurend kleiner dan het fysieke geheugen, dan wil dit niet zeggen dat de pagefile niet gebruikt wordt. Zoals we aan het begin van deze Expertcursus lieten zien, gebruikt Windows de pagefile altijd als deze aanwezig is. Het uitschakelen van de pagefile is nooit aan te raden, ook al is de Peak–waarde voortdurend kleiner dan de hoeveelheid RAM. In dat geval kunt u het best de minimumwaarde instellen die voor de pagefile is toegestaan. Bij systeemcrashes kan er dan een geheugendump naar de pagefile worden weggeschreven. Standaard zal dit een kleine dump zijn, waar dan ruimschoots plaats voor is.

Ligt de Commit Charge Peak daarentegen voortdurend in de buurt van de limiet, dan is dit een aanwijzing dat u fysiek geheugen te kort komt.

Overigens beïnvloedt een te grote pagefile de prestaties van de pc niet negatief, zoals we hierboven al aangaven. Het enige nadeel is in dat geval dat u schijfruimte verspilt. Het zo klein mogelijk maken van de pagefile levert ook geen prestatieverbetering op, maar kan wel problemen veroorzaken, omdat u de pc bepaalde beperkingen oplegt.

Het precies afstellen van de pagefile, heeft dus alleen invloed op de gebruikte schijfruimte. Wanneer u over een ruime hoeveelheid schijfruimte beschikt, is het vaak niet echt zinvol de pagefile tot op enkele tientallen MB’s nauwkeurig aan de behoefte aan te passen. Hoewel de kans groter is dat er fragmentatie optreedt, kunt u de pagefile in dat geval rustig door Windows laten beheren. Wilt u fragmentatie voorkomen, dan geeft u de page een vast instelling met de waarde die Windows bij eigen beheer steeds toewijst.

© PXimport

Een pagefile van 16 MB is ruim voldoende voor een kleine geheugendump.

Optimale plek

Standaard bevindt de pagefile zich op de systeemschijf. Is er sprake van een gepartitioneerde schijf, dan is de systeempartitie aan de buitenkant te vinden, aangezien dit het snelste deel van de schijf is. In theorie kunt u de snelheid verhogen waarmee gegevens uit de pagefile gelezen worden door het bestand naar de uiterste rand van de schijf te verplaatsen. Er is defragmentatiesoftware waarmee dit mogelijk is, maar met de huidige snelle schijven zult u hier niet veel prestatiewinst mee behalen.

Dat laatste is wél mogelijk als u de pagefile op een ander volume onderbrengt. Dat dient dan wel een andere fysieke schijf te zijn: het verplaatsen van de pagefile naar een andere partitie zal de prestaties juist verminderen, omdat u de pagefile daarmee naar een langzamer deel van de schijf verhuist. Bovendien ligt dit gedeelte ook nog eens verder van de systeempartitie af. Verplaatst u de pagefile naar een andere schijf, dan moet deze sneller of even snel als de systeemschijf zijn. Dit houdt automatisch in dat een externe usb-schijf niet geschikt is.

Om de pagefile naar een ander schijf te verplaatsen opent u eerst het venster Systeemeigenschappen. U gaat naar het tabblad Geavanceerd, waar u onder Prestaties op de knop Instellingen klikt. Vervolgens klikt u op het tabblad Geavanceerd op de knop Wijzigen. Voor de systeemschijf geeft u nu aan dat er geen wisselbestand gebruikt moet worden, waarna u op Instellen klikt. Hierna selecteert u de schijf waar de pagefile naartoe moet, en u stelt de gewenste grootte in, waarna u weer op Instellen klikt. Tot slot klikt u twee keer op OK, waarna u de pc opnieuw opstart om de wijzigingen door te voeren.

© PXimport

Het verhuizen van de pagefile.

Woordenlijst

Pagefile: een bestand op de harde schijf dat als extra geheugen wordt gebruikt.

Paging: het wegschrijven van geheugenpagina’s naar de pagefile.

Swap file: de voorloper van de pagefile, waarin gehele processen werden opgeslagen als er te weinig RAM was.

Swapping: het wegschrijven van processen naar de swap file.

Fysiek geheugen: de geheugenmodules op het moederbord, ofwel het RAM (Random Access Memory).

Virtueel geheugen: schijnbaar geheugen; wat een programma ziet als een aaneengesloten geheel van geheugenadressen, kan zich in feite deels in het RAM en deels op de schijf bevinden

Fragmentatie

Zoals gezegd kan er fragmentatie optreden wanneer Windows de aan de pagefile toegewezen schijfruimte vergroot. Gelukkig is dit meestal maar tijdelijk. Soms raakt de pagefile echter permanent gefragmenteerd. Dit kan bijvoorbeeld al gebeuren tijdens de installatie van Windows, maar het doet zich soms ook voor na een ‘repair install’ of na het wijzigen van de schijfindeling met een partitieprogramma. In Windows XP ziet u in het analyserapport van Schijfdefragmentatie of de pagefile gefragmenteerd is.

In Vista en Windows 7 gebruikt u hiervoor Defraggler. Gebruik dit programma alleen om de schijf te analyseren, niet om deze te defragmenteren! Defraggler gebruikt namelijk een ander defragmentatie-algoritme dan Windows, dat in conflict komt met het prefetching-proces dat sinds XP wordt gebruikt. Nadat u op de knop Analyse hebt geklikt, ziet u een grafische weergave van de schijf. Een uitleg van de betekenis van de verschillende kleuren krijgt u via Help / Drive Map Legend.

© PXimport

Een gefragmenteerde pagefile.

Defragmentatie

Als Windows Schijfdefragmentatie de pagefile niet kan defragmenteren, kunt u voor XP het programma PageDefrag gebruiken. PageDefrag defragmenteert de pagefile en andere systeembestanden tijden het opstarten. Onder Windows 7 en Vista werkt dit tooltje helaas niet. Onder deze besturingssystemen kunt u de pagefile het beste tijdelijk naar een andere partitie of schijf verplaatsen zie de voorgaande paragraaf. Nadat u de pagefile hebt verplaatst, voert u een defragmentatie van de systeemschijf uit: u gaat naar Start / Alle programma’s / Bureau-accessoires / Systeemwerkset / Schijfdefragmentatie, waarna u de systeemschijf selecteert en op Schijf defragmenteren klikt. Na deze defragmentatie schakelt u de tijdelijke pagefile weer uit, en stelt u een nieuwe pagefile in op de systeemschijf. Na opnieuw opstarten zal de pagefile weer uit één fragment bestaan.

© PXimport

De pagefile bestaat weer uit één fragment.

Deel dit artikel
Voeg toe aan favorieten