Gestione manuale della
Memoria Virtuale

Torna all' HOME PAGE del sito !

Molti di voi già sapranno che Windows 95/98 gestisce la memoria virtuale automaticamente: in parole povere quando la RAM fisica è insufficiente per caricare un programma, Windows provvede a "togliere" quei dati che al momento non servono (per esempio qualche DLL inutilizzata rimasta in memoria oppure dati relativi alla cache del disco) e li trasferisce in un file di sistema (detto file di swap) dal nome WIN386.SWP, permettendo quindi il caricamento del programma nella RAM fisica.
Questa simulazione della memoria RAM su disco offre sostanzialmente 2 vantaggi:

  1. Possibiltà di eseguire in multitasking un numero di programmi teoricamente illimitato, dal momento che Windows provvede ad aumentare la dimensione del file di swap quando necessario (e a diminuirla quando superflua).
    Praticamente Windows è in grado di "trasformare" in memoria RAM virtuale tutto lo spazio libero del vostro disco rigido.
  2. Possibiltà di allocare quasi tutta la RAM fisica ad un solo programma affamato di risorse (tipici i videogiochi dell'ultima generazione) "parcheggiando" nel file di swap quei dati non indispensabili mantenere in RAM.

Tuttavia questa simulazione offre anche 2 svantaggi:

  1. La memoria RAM simulata su disco è molto più lenta della memoria RAM fisica, quindi i tempi di esecuzione dei programmi che avete caricato rallentano a vista d'occhio quando la RAM fisica comincia a scarseggiare.
  2. L'aumento e la diminuzione della dimensione del file di swap comporta un sovraccarico di lavoro per Windows ed una frammentazione del file stesso: questo determina un ulteriore aumento dei tempi d'esecuzione dei programmi rispetto ad un file di swap non frammentato e gestito manualmente.

Per quanto riguarda il primo svantaggio, c'è poco da fare: anche il più veloce disco rigido attualmente in commercio non è in grado di competere con i tempi di accesso della RAM fisica.
Ma per il secondo svantaggio possiamo intervenire in modo rapido e semplice: basta dire a Windows di creare il file di swap una volta per tutte nel disco rigido ed assegnargli una dimensione minima, sotto la quale non dovrà mai scendere.
Dal Pannello di controllo, aprite l'icona Sistema, cliccate sulla scheda Prestazioni e quindi premete il pulsante Memoria virtuale.
Dovrebbe apparirvi una finestra simile a questa:

Come potete vedere, quando Windows gestisce automaticamente la memoria virtuale non assegna alcun limite minimo al file di swap, mentre il limite massimo coincide con lo spazio libero del disco.
Cliccate su Impostazione manuale della memoria virtuale e provate ad assegnare i valori della figura seguente:

Il significato dei numeri 64 e 128 è il seguente: nella casella Minima diciamo a Windows che il file di swap non dovrà mai scendere sotto i 64Mb, indipendentemente dai tipi di programmi che eseguiremo. Nella casella Massima informiamo Windows di aumentare il file di swap fino ad un massimo di 128Mb solo se la RAM fisica + 64Mb di memoria virtuale minima non dovessero essere sufficienti per continuare a lavorare. Se ancora la RAM fisica + 128Mb di memoria virtuale massima non dovessero bastare, nella peggiore delle ipotesi il sistema operativo si blocca costringendoci a riavviare il PC, mentre nella migliore veniamo gentilmente informati che non c'è più memoria per continuare a lavorare.

I valori 64 e 128 dovrebbero andar bene per tutti i sistemi: dipende da come utilizzate il vostro PC.
Se lavorate su un portatile di fascia bassa, utilizzate quasi sempre programmi di videoscrittura o al massimo giocate con il solitario di Windows, allora questi valori sono fin troppo elevati.
Se invece avete appena acquistato una super workstation per effettuare montaggi video e passare allo scanner documenti in alta risoluzione, allora questi valori potrebbero non essere sufficienti.
A meno che non abbiate già le idee chiare, il mio consiglio è di provare varie configurazioni, fino a trovare quella ottimale.
Provate a seguire questo procedimento: assegnate nella casella Minima il valore N e nella casella Massima il valore N*2, dove N è la quantità di RAM fisica installata nel vostro PC.
Se ottenete messaggi di memoria insufficiente o blocchi del sistema quando caricate le vostre applicazioni, provate a raddoppiare i valori N e N*2 (che diventeranno quindi N*2 e N*4) e riprovate.

Inoltre, per avere un'idea se la dimensione minima del file di swap è troppo piccola o troppo grande, da Gestione Risorse (Esplora Risorse in Windows 98) osservate se la dimensione effettiva di WIN386.SWP coincide con il valore minimo che avete impostato nella memoria virtuale dopo aver eseguito alcune applicazioni che usate di solito: se la dimensione del file di swap è aumentata, vuol dire che la dimensione minima impostata è insufficiente.
Altrimenti, nel caso non sia aumentata, provate a mettervi nelle peggiori condizioni d'utilizzo del vostro sistema: provate a caricare il programma e/o il videogame più affamato di memoria che possedete, oppure provate a lavorare in multitasking con le applicazioni che usate maggiormente.
Ricontrollate la dimensione del file di swap: se coincide ancora con la dimensione minima impostata, forse avete impostato un valore troppo alto.
Ricordatevi che per rendere effettive le modifiche dovrete riavviare il sistema, ma ci penserà Windows a ricordarvelo.

Arrivati a questo punto abbiamo sicuramente ridotto il sovraccarico di lavoro necessario a Windows per modificare continuamente la dimensione del file di swap, tuttavia nulla abbiamo fatto per quanto riguarda la frammentazione del file stesso.
Per essere sicuri che il file WIN386.SWP non sia frammentato e che sia contiguo nel disco, dobbiamo utilizzare un deframmentatore del disco in grado di agire su tale file: quello fornito con Windows 95/98 non è in grado di ottimizzare il file di swap (e ti pareva!), occorre quindi utilizzare programmi più professionali come Speed Disk delle Norton Utilities o Disk Tune delle Nuts & Bolts.
Entrambi i programmi hanno un'opzione del tipo Ottimizza il file di swap che deve essere attivata prima di iniziare la deframmentazione del disco. Compiuto anche quest'ultimo passo, non rimane che riavviare il PC per notare un generale miglioramento delle prestazioni del disco ed una diminuzione dei tempi di caricamento.