Programmazione.it v6.4
Ciao, per farti riconoscere devi fare il login. Non ti sei ancora iscritto? Che aspetti, registrati adesso!
Info Pubblicità Collabora Autori Sottoscrizioni Preferiti Bozze Scheda personale Privacy Archivio Libri Corsi per principianti Forum
Greenpeace
Windows e l'efficienza: non solo un problema di RAM (2/4)
Scritto da Massimo Mazza il 27-07-2010 ore 11:24
Il pagefile, o file di swap, è una delle componenti più discusse di Windows: la sua gestione non è sempre ben chiara e trasparente, e oltretutto le modalità di utilizzo da parte di Windows 2000/XP/Vista differiscono da quelle di Windows NT, che a sua volta è diversa da quelle di Windows 98, e così via.

Non è questa la sede adatta per discutere gli approfondimenti sulle modalità di utilizzo della RAM e del pagefile da parte di Windows; basti comunque sapere che vi sono principalmente due miti da sfatare riguardo al file di swap, e cioè:
  • che il pagefile debba essere di dimensione fissa (con dimensioni minima e massima identiche, impostabili tramite il pannello di controllo), per evitare l'eccessiva frammentazione del pagefile;
  • che tale file debba essere almeno 2,5 volte la RAM installata (a volte 1,5, a volte 2, dipende dall'esperto che in quel momento vi consiglia).
Tali consigli andavano benissimo all'epoca di Windows 98 e Windows NT, ma ora i tempi sono cambiati, i PC generalmente hanno 1 o 2 GB di RAM a bordo (come minimo) e la gestione del pagefile di Windows è stata modificata, non drasticamente, ma comunque in maniera alle reali esigenze; queste ultime in realtà sono inferiori a quanto prevede la gestione automatica del pagefile da parte di Windows.

Nel mio caso, ho sempre utilizzato il pagefile di dimensione fissa, non per evitare l'eccessiva rammentazione (il pagefile viene continuamente ricreato a ogni reboot del PC), bensì per costringere Windows a utilizzare più RAM. Il discorso è molto sottile, ma approfondirlo richiederebbe uno spazio assai maggiore di quello previsto.

Ad ogni buon conto, ritornando al problema iniziale, per risolverlo innanzitutto ho provveduto a stoppare il servizio del deframmentatore, onde evitare che andasse a ritoccare continuamente il pagefile; quindi ho azzerato il pagefile, ho riavviato il PC e ho effettuato una deframmentazione manuale dell'intero disco fisso, avendo cura di caricare il minimo di servizi indispensabili per evitare un consumo eccessivo della RAM, in quanto non potevo prevedere quanta ne avrebbe consumata Windows.

Effettuato ciò, ho reimpostato il pagefile a una dimensione opportuna — nel mio caso 500 MB in quanto avevo installato 1,5 GB mentre prima dell'upgrade era impostato a 1 GB, in quanto avevo solo 512 MB di RAM — e ho riavviato nuovamente il PC per osservarne il comportamento.

La terapia è risultata salutare, in quanto finalmente il processo di boot (e di shutdown) è ritornato a tempistiche più ragionevoli invece di essere apparentemente interminabile.
Precedente: Tracking in WF 4.0: SQL Server Tracing (2/3)
Successiva: Perl 6, qualche anticipazione su un suo imminente rilascio
Intervento di Mirko Nextware a.k.a. alwayshc del 27-07-2010 ore 12:52, Spello (PG)
Nobile
Nobile
(83 interventi)
Iscritto il 31-12-2001
Non ho letto la documentazione ufficiale, comunque, se si impostano le dimensioni minima e massima del pagefile uguali, il file non viene ricreato ad ogni boot.

Inoltre, il pagefile, essendo ad uso esclusivo del Sistema operativo, non può essere toccato da un deframmentatore.

C'e' infatti l'utilità PageDefrag che permette di deframmentare il pagefile... prima che Windows se ne impossessi.
Intervento di Massimo Mazza a.k.a. banjoman del 27-07-2010 ore 13:43, Mandatoriccio (CS)
Barone
Barone

(290 interventi)
Iscritto il 13-03-2005
alwayshc ha scritto:
Non ho letto la documentazione ufficiale, comunque, se si impostano le dimensioni minima e massima del pagefile uguali, il file non viene ricreato ad ogni boot.
Se e' impostato come gestione automatica di Windows si'.
Con dimensioni fisse mi hai fatto venire il dubbio sai? Controllo meglio...
alwayshc ha scritto:
Inoltre, il pagefile, essendo ad uso esclusivo del Sistema operativo, non può essere toccato da un deframmentatore.
Vero, durante l'esecuzione di Windows. Ma Diskeeper (l'utility che uso io da anni) lo fa durante il boot, prima che entri in funzione Win. E' una opzione manuale ovviamente, non automatica.
Intervento di David La Monaca a.k.a. cercamon del 02-08-2010 ore 11:00, Roma (RM)
Plebeo
Plebeo
(1 intervento)
Iscritto il 02-08-2010
Per "stoppare il servizio del deframmentatore" che cosa intendi? Quale servizio si dovrebbe fermare e come?

Grazie.
Intervento di Massimo Mazza a.k.a. banjoman del 23-08-2010 ore 21:10, Mandatoriccio (CS)
Barone
Barone

(290 interventi)
Iscritto il 13-03-2005
cercamon ha scritto:
Per "stoppare il servizio del deframmentatore" che cosa intendi? Quale servizio si dovrebbe fermare e come?

Grazie.

Dipende dal programma di deframmentazione usato. Nel caso di Diskeeper, si va nel pannello di controllo gestione Servizi e si stoppa DkService.exe, semplicemente premendo il pulsante STOP.
Solitamente tali servizi sono avviati in modalita' automatica, quindi non e' consigliabile porlo in avvio manuale, onde evitare di dimenticarsi di riavviarlo terminati gli esperimenti sul PC....

Max
Copyright Programmazione.it™ 1999-2013. Alcuni diritti riservati. Testata giornalistica iscritta col n. 569 presso il Tribunale di Milano in data 14/10/2002. Pagina generata in 0.283 secondi.