Newsgroup: it.comp.os.win.xp
Titolo: file di swap winxp

Ciao a tutti
Non riesco a seguire la logica con la quale WinXp assegna/gestisce il file 
di swap
Premetto che sono appena passato da 768Mb di Ram a 1.7GB visto che in alcuni 
casi (encoding video) mi trovavo con la memoria al "limite".
Fatta l'aggiunta ho porvato ad impostare alle misure minime il file di swap, 
che, come indicato, sono 2mb, nel mio solito HDD dedicato al file di 
swap(D:\): ebbene impostare 2mb e' impossibile. Infati nonostante permanga 
l'indicazione di 2 Mb il SO crea "automaticamente" un file di swap su C: di 
circa 1.8GB.
Per evitare questo ho comunque diovuto impostare 512Mb (min/Max) di swap su 
D:\ perche venisse creato solo li.
Oltre a questo, con mio stupore, noto che comunque il SO continua ad usare 
tutto il file di swap disponibile (OExpress, IE, Emule in funzione), ne usa 
426Mb su 512Mb, mentre lascia "libera" praticamente tutta la ram; Memoria 
Fisica 1.834.480Kb-Disponibile circa 1.260.000 cache sistema (differenza).
Ora ho anche tempo fa forzato con regedit il SO a caricare il kernel in 
memoria (HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session 
Manager\Memory Management -- DisablePagingExecutive=1), e nonostante questo 
vedo (task manager) che alla voce memoria del kernel dice:
totale 62776
di paging 50308
non di paging 12468
in pratica lo mette in gran parte sul file di swap.
Insomma, c'e' modo di "forzare" il SO a usare sempre il quantitativo piu 
alto di ram possibile?
Non e' possibile che su 1.7GB ne usi solo 600Mb e il resto usi 400Mb di file 
di swap!!
Grazie a tutti
Giuseppe

 di swap
Ora, a parte confondere i KB con i MB, ma chettefrega de 'sta logica? 
Tutto funziona bene? Perchè crearsi problemi dove non ce ne sono?
-- 
Saluti
Get Firefox @ 
www.mozilla-europe.org/it

 Tutto funziona bene? Perchè crearsi problemi dove non ce ne sono?
Ora, a parte che non ho fatto nessuna confusione, leggi con piu' attenzione,
il fatto che lo chieda e' perche', chiaramente, vorrei, che il S.O.
utilizzasse completamente la ram a disposizione; se fai piu' attenzione
infatti, sono esattamente le domande che faccio al termine del post: lo hai
letto sino alla fine, o rispondi solo per muovere le dita sulla tastiera?
Ciao
Giuseppe

 letto sino alla fine, o rispondi solo per muovere le dita sulla tastiera?
A volte la prima, a volte la seconda, dipende.


 Continuo a non capire il problema, io vorrei che facesse il contrario...
Si, posso c apire che tu abbia questa volonta', e la rispetto; ma c'e' modo 
che faccia il  contrario?
Il fatto che mi fa rabbia e' che nonostante ci siano a disposizione Mb e Mb 
di ram il SO continua ad utilizzare lo swap file, chiaramente meno 
performante, sia per i processi  e servizi del SO che per i programmi in 
esecuzione; come osservavo prima, si lascia "libera" circa i 2/3 della ram a 
disposizione, un po' troppa (1.2Gb!!)
Ciao
Giuseppe

 disposizione, un po' troppa (1.2Gb!!)
Io la vedo così:
la ram che ti rimane libera, semplicemente non serve a Windows. Il file 
di swap viene automaticamente dimensionato alla dimensione minima (di 
default, 1,5 volte la RAM).
Anche se stai usando 100 MB di RAM, il file di swap c'è comunque nella 
sua dimensione minima, il che non vuol dire che Windows stia usando il 
file di swap, ma che ce l'ha già pronto nel caso in cui non abbia più a 
disposizione RAM (correggetemi se sbaglio).
Dubito fortemente che il tuo PC abbia continuamente bisogno di 1,8GB di 
RAM, se così fosse sarebbe preoccupante, il mio PC, se faccio un boot 
con Windows 2000, all'avvio occupa meno di 100 MB di RAM.



Vediamoloa cosi' allora:
e' chiaro che non c'e' sempre necessita' di tutto quel quantitativo di 
memoria (!!), chiaro hai piu' che ragione!
Ma il fatto e' proprio questo: mi spiego meglio.
Come ho detto io ho impostato lo swap file ad una dimensione fissa,
 512Max-512Min, ed in una partizione (FAT32) a se stante a lui 
esclusivamente dedicata. Ora se interpreto bene cio che si legge sul task 
manager, li si legge:
Utillizzo File di Paging: 443MB
io, leggendo questo, interpresto che il SO sta utilizzando 443MB dei 512MB 
impostati come file di swap: ergo dei 58 processi in esecuzione e tutto il 
resto una parte e' caricata sullo swap file ed un'altra nella ram a 
disposizione: vediamo ora nello stesso momento la ram a disposizione.
Ce ne sono sempre un totale di 1.8Gb (1.834.480 KB) e diponibile circa 1.2Gb 
(1.262.300KB).
La questione e' perche' usa il file di swap (443MB) quando potrebbe 
utilizzare la ram a disposizione (1.2Gb).
Mi attenderei un tale comportamento se la ram a disposizione fosse in 
esaurimento  e quindi nella mia gestione me ne lascio sempre un po'  libera 
utilizzando lo swap; ma cosi' significa ignorare cio' che si ha a 
disposizione!!!
Ciao
Giuseppe 

 (1.262.300KB).
Secondo me quello che tu intendi come "utilizzo file di paging" è la 
memoria occupata da tutti i tuoi processi. Questi processi sono tutti in 
RAM, non nel file di paging, infatti hai 1,2 GB di RAM disponibile su 1,8.
Perchè dici che sta usando il file di paging e non la RAM?
P.S.: non ti sembra un po' piccolo quel file di swap? Microsoft 
consiglia una dimensione di almeno 1,5 volte la ram.
Sento che ci vuole un post risolutivo di qualcuno che di queste cose ne 
mastica tutti i giorni.


 una dimensione di almeno 1,5 volte la ram.
Dico che usa il file di paging perche' nel task manager nella scheda 
prestazioni c'e' un indicatore verticale a sinistra che indica "Utilizzo 
file di paging" con quella cifra (412MB).
Nella stessa scheda (prestazioni), in basso ci sono le atre indicazioni che 
ho dato (Memoria fisica Tot/disponibile) (memoria Kernel Tot/di paging/non 
di paging)
Ciao
Giuseppe 

 file di paging" con quella cifra (412MB).
Se quel dato corrisponde al totale della memoria allocata, per me è 
tutta ram.


 ram.
Se e' cosi' perche lo chiama "file di paging"?
Una cosa e' la memoria fisica (Ram), altro e' il file di paging (Swap 
File=pagefile.sys) .
No, penso proprio che intenda il file di swap, anche perche nella stessa 
tabella mette, in altro posto, la memoria (ram) fisica, distinta da altro
Ciao
Giuseppe 

Usa TweakXP, che ha la possibilità di dire a windows di adoperare solo 
la ram prima di adoperare lo swap su disco, molto più lento.
ciao

 di swap
...
Io premetto che non so esattamente con che logica sia stato progettato XP,
ma che ho studiato e credo di conoscere abbastanza i meccanismi della
memoria virtuale.
Quindi quello che segue non deve essere inteso come certezza ma piuttosto
come congettura.
La memoria virtuale serve a far funzionare una macchina come se disponesse
di una quantita' di RAM molto superiore a quella effettivamente
disponibile.
Il file di swap serve come deposito delle aree di memoria che sono state
assegnate ma che le applicazioni usano poco.
Quando il sistema determina che c'e' carenza di RAM, va a cercare le aree
inutilizzate da piu' tempo e le rende nuovamente disponibili. Naturalmente
non prima di averne salvato in contenuto appunto nello swap.
Poiche' quest'ultima attivita' porta via del tempo, il sistema saggiamente
cerca di avvantaggiarsi: cioe', nei momenti di minore attivita', ne
approfitta per anticipare la scrittura, in modo che al momento del bisogno
la parte piu' pesante sara' gia stata fatta.
Il rovescio della medaglia e' che se una pagina viene ripetutamente
modificata, l'operazione di scrittura deve essere ripetuta.
Quindi, io non mi starei a preoccupare se il file di swap risulta usato
anche quando la RAM non e' tutta piena. Il sistema usa sempre il
quantitativo piu' alto possibile di RAM, ma contemporaneamente anticipa la
scrittura sullo swap di tutta quella parte potenzialmente candidata ad
andarci, semplicemente perche' sta cercando di avvantaggiarsi sul probabile
lavoro futuro.
-- 
Beppe
--
L'indirizzo email non e' valido; il dominio giusto e' 
katamail.com