Quali sono i pericoli legati all'impostazione manuale di AumentaUserVA?


8

Corro Visual Studio 2010 su un sistema a 32 bit e incontro regolarmente problemi con l'esaurimento della memoria virtuale, quindi non posso più fare cose come copiare / incollare in VS.

Ho verificato alcune opzioni e la riga Microsoft su questo indicato in esecuzione con meno estensioni aperte, e se ciò non ha funzionato, utilizzare il comando bcedit / set IncreaseUserVA 3072.

Ciò sembrava attenuare il problema, tuttavia dopo circa un giorno di utilizzo, improvvisamente Windows inizia a dirmi che ho esaurito lo spazio su disco - su un'unità con oltre 100 GB disponibili. Ad esempio, smetterebbe di copiare un file, dicendo che non c'era spazio per copiarlo. Tuttavia, fare clic su "Riprova" avrebbe esito positivo. Molti altri programmi che scrivevano cose su disco cadevano regolarmente. (Incluso Skype ... perché scrivevi sempre sul disco, Skype ?!)

Ho eseguito chkdsk e fatto altri controlli di base prima di concludere che la mia modifica alla configurazione deve essere responsabile. Fortunatamente il ripristino delle impostazioni predefinite ha funzionato e ora sono tornato in azione.

La maggior parte degli articoli (tranne, in particolare quelli di Microsoft) su IncreaseUserVA dice "Usa a tuo rischio e pericolo", e chiaramente l'ho fatto e ho perso. Qualcuno può spiegare perché questo comportamento è stato esibito / cosa può andare storto in quella che sembra essere una modifica legittima alla configurazione di Windows 7?

Per la cronaca: la macchina era un laptop dell Vostro con un'unità disco da 260Gb / 5400rpm, RAM 3.2Gb (effettiva), con Windows 7 e tutti gli aggiornamenti precedenti a SP1.


Se le cose vanno male, come posso ripristinare le impostazioni predefinite. Eseguendo questo comando bcedit / set IncreaseUserVA 2048 ??
Saravana Kumar,

Risposte:


6

Windows suddivide a metà i 4 GB disponibili di spazio di indirizzi su un sistema a 32 bit, in modo che il kernel ottenga 2 GB e il programma ottenga 2 GB (viene virtualizzato in modo che ogni programma ottenga 2 GB). Il comando "bcedit / set IncreaseUserVA 3072" modifica il partizionamento in modo che ogni programma ottenga 3 GB e lo spazio del kernel ottenga solo 1 GB. Per lo più funziona bene, ma come hai notato puoi avere dei problemi. Di solito è un driver che gira nello spazio del kernel che è stato programmato per presumere che abbia 2 GB di spazio di indirizzi disponibili che causano i problemi quando tenta di usare i 2 GB di spazio di indirizzi senza preoccuparsi di controllarlo.


0

Se hai 8 GB di RAM e hai bisogno di uno spazio di indirizzi utente più grande, la soluzione migliore è installare il server Windows 2003. Non sono necessarie modifiche e le tue app a 32 bit ottengono 4 GB di spazio indirizzo ciascuna. Ci sono alcuni driver a cui non piace questo ed è per questo che MS non lo abilita sul sistema operativo desktop. Gli arresti anomali causati dall'avere un driver che non lo supporta sono imprevedibili e difficili da diagnosticare e si trovano principalmente nei driver non utilizzati nell'ambiente server.

È possibile modificare il kernel Vista / Win7 e aggiungerlo come opzione al menu di avvio per ottenere la stessa memoria disponibile nelle edizioni Server a 32 bit:

www.geoffchappell.com/notes/windows/license/memory.htm

C'è una patch pre-fatta che fa questa roba ma non l'ho testata e non c'è fonte ad essa ...


Come accennato, la patch si chiama patch2pae. Una copia si trova in wj32.org/wp/2010/05/04/pae-patch-updated-for-windows-7 Cosa fa patch al caricatore di windows e al kernel per accedere oltre lo spazio di indirizzi di 4 GB attraverso l'estensione PAE.
g5thomas,

0

Ho impostato IncreaseUserVa a volte su 3g per ottenere un grande progetto da compilare. Noto che se il sistema va in letargo, diventa molto instabile al risveglio. I server in genere non vanno in letargo, immagino.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.