Esiste un modo per abilitare più di 4 GB di RAM nel sistema operativo Windows a 32 bit?


22

Ho aggiornato il mio PC a 4 GB di RAM e ho solo 3 GB. Windows 7 a 32 bit considera che ho 4 GB di RAM, ma non ho usato più di 3 GB.

Qualcuno mi ha detto che MS Windows a 32 bit non supporta RAM di dimensioni superiori a 3 GB.

Quindi, per favore, c'è un modo per fare in modo che il mio sistema operativo "Windows 7 a 32 bit" supporti più di 3 GB di RAM?

* `Nota: non riesco a passare a 64 bit perché ho molti programmi che non funzionano con un sistema operativo a 64 bit.

Modificare::

Ho provato ciò che il signor Wonsungi mi ha consigliato, ma ogni volta che seleziono questa opzione:

Enable support for 4 GB of RAM

Ottengo il seguente errore:

'Cannot access to the registry key HKEY_CLASSES_ROOT\CLSID\{E88DCCE0-11d1-A9F0-00AA0060FA31}.'

Non c'è "CLSID" nel mio registro, non so perché !.


23
"Molti programmi non funzionano con il sistema operativo a 64 bit" non è in realtà un motivo valido nell'era dei computer virtuali. con VirtualBox (che risulta essere gratuito) puoi eseguire le tue applicazioni a 32 bit su una macchina virtuale Windows a 32 bit in modalità seamless (integrata nel sistema operativo host) e difficilmente sentire la differenza (a meno che tu non abbia bisogno della piena potenza della tua grafica scheda disponibile per queste applicazioni)

Sono d'accordo con Molly. E per i programmi a 16 bit, è possibile utilizzare un emulatore come DOSBox. dosbox.com
Sasha Chedygov

1
Se possiedi Windows 7 Professional, Enterprise o Ultimate, prendi in considerazione la modalità Windows XP: microsoft.com/windows/virtual-pc
alex

Sto usando molti programmi a 32 bit su Win7 64 bit. Esse vanno dal 1998 al 2001. La maggior parte richiede modalità di compatibilità per funzionare. Stai assumendo che non funzionerà o qualcuno ti ha detto che non funzionerà? Ci hai provato?
km

ad Edit1: ho capito che non hai ancora eseguito l'aggiornamento a 4 GB ... quindi non sai ancora, se funziona o no, giusto? Per assicurarsi che funzioni, è necessario aggiornare b / c non ci sono solo vincite Win ma anche limitazioni HW. Effettua l'aggiornamento e poi forniscici informazioni più dettagliate sulla tua configurazione se non funziona.
Gerd Klima,

Risposte:


11

Puoi usare PAE, ma non è così buono come andare a 64 bit. Controlla questa pagina MSDN.

Abilitazione PAE

Windows abilita automaticamente PAE se DEP è abilitato su un computer che supporta DEP abilitato per l'hardware o se il computer è configurato per dispositivi di memoria hot-add in intervalli di memoria superiori a 4 GB. Se il computer non supporta DEP abilitato per l'hardware o non è configurato per dispositivi di memoria hot-add in intervalli di memoria superiori a 4 GB, PAE deve essere esplicitamente abilitato.

Per abilitare esplicitamente PAE, utilizzare il seguente comando BCDEdit / set per impostare l'opzione della voce di avvio pae:

bcdedit /set [{ID}] pae ForceEnable

SE DEP è abilitato, PAE non può essere disabilitato. Utilizzare i seguenti comandi BCDEdit / set per disabilitare sia DEP che PAE:

bcdedit /set [{ID}] nx AlwaysOff
bcdedit /set [{ID}] pae ForceDisable

Windows Server 2003 e Windows XP : per abilitare PAE, utilizzare l' opzione / PAE nel file boot.ini . Per disabilitare PAE, utilizzare l' opzione / NOPAE . Per disabilitare DEP, utilizzare l' opzione / EXECUTE .


1
Ho trovato questo To explicitly enable PAE, use the following BCDEdit /set command to set the pae boot entry option: bcdedit /set [{ID}] pae ForceEnable nella pagina MSDN che hai fornito. Ma non so come e dove scrivere questo comando. Potresti aiutarmi per favore?
Wahid Bitar,

5
Se non sai come farlo, ti consiglio vivamente di non farlo affatto , se qualcosa va storto avrai bisogno di quella conoscenza per salvare il tuo sistema.
Phoshi,

4
lo switch PAE non è un miracolo nascosto e certamente non è il Santo Graal per i sistemi da 4 GB a 32 bit (oppure tutti lo userebbero, vero?). può causare instabilità del sistema.

2
Lo switch PAE non ti consentirà comunque di utilizzare l'intero 4 GB di RAM. Vedi la mia risposta di seguito per una soluzione che risolve questo problema.
Breakthrough

2
"Alcune versioni a 32 bit di Windows Server in esecuzione su sistemi x86 possono utilizzare PAE per accedere a 64 GB o 128 GB di memoria fisica." Questo post si applica SOLO a Windows Server: le versioni desktop a 32 bit di Windows indirizzeranno solo 4 GB. È un problema di licenza non un problema hardware o software, l'esecuzione di questo comando non cambierà questo fatto - msdn.microsoft.com/en-us/library/aa366778(v=vs.85).aspx .
Natalie Adams,

13

Leggi questo: Amico, dov'è il mio 4 gigabyte di RAM?

Per informazioni generali, c'è anche questa panoramica sui limiti di memoria per edizione di Windows:

Limiti di memoria per le versioni di Windows


Dicono che sia un problema X86. Puoi spiegarmi perché allora OSX a 32 bit non ha problemi a indirizzare 16 Gb in un MacPro?
Bert

A proposito, nella terra a 8 e 16 bit, era molto comune avere quantità di RAM oltre i 2 ^ bit byte.
Bert

4
La voce di Wikipedia per PAE (Physical Adress Extension) afferma: Mac OS X Mac OS X per Intel Mac supporta PAE e il bit NX su tutte le CPU supportate da Apple (dalla 10.4.4 — la prima versione di Intel — in poi). I sistemi Mac Pro e Xserve possono attualmente supportare 32 GiB di RAM, anche se il kernel Leopard Mac OS X 10.5 rimane a 32 bit. Il kernel di Mac OS X 10.6 Snow Leopard può facoltativamente essere eseguito a 64 bit su alcuni sistemi en.wikipedia.org/wiki/Physical_Address_Extension
Gerd Klima

1
OSX 32 e Linux Kernel 2.6 32 sono essenzialmente sistemi operativi a 32/64 byte, che utilizzano principalmente istruzioni a 32 bit ma utilizzano un indirizzamento della memoria a 64 bit, in particolare per l'allocazione della memoria del file system e O / S. I programmi in esecuzione su di essi sono ancora soggetti ad alcune limitazioni a 32 bit.
km

5
Questo non è corretto Le versioni a 32 bit del kernel Linux non sono un sistema operativo strano [sic] a 32/64 byte. Sono sistemi operativi a 32 bit che, se vengono selezionate le opzioni giuste, possono utilizzare PAE per indirizzare 2 ^ 36 byte di memoria, sebbene meno di 2 ^ 32 per processo. Se il kernel è a 64 bit, utilizza l'indirizzamento a 64 bit.
ChrisInEdmonton,

11

Di recente, un gruppo di programmatori ha rilasciato una patch del kernel per Windows 7 per consentire l'utilizzo di oltre 4 GB di RAM in Windows 7. Fare clic qui per scaricare la patch o visualizzare ulteriori informazioni al riguardo . La patch modifica sostanzialmente il kernel di Windows 7 in modo che assomigli di più a Windows Server 2003 Datacenter Edition, che è compatibile con un massimo di 8 GB di RAM in modalità a 32 bit.

La patch consente di estendere bene il PAE a 8 GB di RAM con Windows 7 a 32 bit. Per ulteriori informazioni sul motivo per cui Microsoft ha implementato questa limitazione tecnica, consultare questo articolo .

Nota che i singoli processi saranno comunque limitati a 4 GB anche se il sistema può accedere a più ... Anche se avessi 8 GB di RAM, almeno avresti ancora altri 4 GB per altri processi;)


1
Uso questa patch da mesi ormai e non ho riscontrato problemi. Alcuni programmi (specialmente Photoshop) non hanno problemi quando si usa molta RAM. :)
Sfondamento

1
Ricorda che la modifica dei file di sistema viola la licenza del prodotto e annulla la garanzia.
Kinokijuf,

Voglio entrare e dire che l'hack probabilmente funzionerà per un po '. Ma l'aggiornamento del tuo sistema sarebbe probabilmente un gioco della roulette russa - Microsoft probabilmente non ha intenzione di tappare intenzionalmente il buco del kernel, ma un aggiornamento potrebbe lasciare il tuo sistema bloccato.
Natalie Adams,

@NathanAdams questo non è un "buco", è il risultato della memoria con licenza (vedi l'articolo che ho linkato sopra). Questa patch copia anche il kernel esistente prima di correggerlo, quindi se sei preoccupato, puoi semplicemente avviare Windows senza la patch per eseguire Windows Update.
Breakthrough

8

Per quanto ne so, Window a 32 bit può usare memoria fino a 64 GB e può essere "hackerata" per farlo.
Questo trucco è descritto qui di seguito: Memoria con licenza in Windows Vista .
(Nota: non consiglio a nessuno di provarlo davvero.)
Rende anche la lettura interessante, poiché spiega molto bene tutti i concetti coinvolti.
Riporto sotto la sua immagine di prova di concetto.

Il fatto che le edizioni a 32 bit di Windows Vista siano limitate a 4 GB non è dovuto a vincoli fisici o tecnici sui sistemi operativi a 32 bit. Le edizioni a 32 bit di Windows Vista contengono tutte codice per l'utilizzo di memoria fisica superiore a 4 GB. Microsoft non ti autorizza a utilizzare quel codice.

Immagine


Vedi il mio commento sopra, Vista e sopra riporteranno la memoria TOTALE FISICA in quella finestra. Questo NON è l'importo totale che verrà utilizzato dal sistema operativo. Per uno, sono sicuro che l'hacking non è aggiornato e probabilmente non funzionerà in Vista SP2. Inoltre, i processori a 64 bit sono la norma, quindi non c'è motivo di non utilizzare un sistema operativo a 64 bit.
Natalie Adams,

@Nathan: l'articolo che ho citato rende una lettura molto avvincente. Da quello che so dell'architettura Intel, a 32 bit o meno, l'unico vero limite dovrebbe essere di 4 GB per applicazione .
harrymc,


Sono abbastanza sicuro che viola l'EULA. Quindi, NON consiglierei di installare quella patch.
Natalie Adams,

@Nathan Adams: Né l'ho consigliato.
harrymc,

7

La risposta a questa domanda è davvero "dipende da chi chiedi".

Alcuni dicono di usare PAE, che ti consentirà di indirizzare più di 4 GB MA Microsoft NON ti consentirà su molte delle versioni a 32 bit di Windows.

http://msdn.microsoft.com/en-gb/library/aa366778(VS.85).aspx
La tabella seguente specifica i limiti della memoria fisica per Windows 7.

Limite fisico di 4 GB, periodo. È un problema di licenza. Potrebbe persino esserci un "hack" che ti consente di utilizzare più di 4 GB, ma non ricordo.

Nota: Vista e Windows 7 a 32 bit segnaleranno la RAM FISICA TOTALE presente nel sistema, ma ne utilizzeranno SOLO 4 GB. Quindi, spingendo 16 GB in un computer che esegue Windows a 32 bit, verranno utilizzati solo 4 GB SECONDO MICROSOFT anche se il pannello di controllo "Sistema" mostrerà 16 GB. Windows 7, Vista e XP a 32 bit useranno solo 4 GB di RAM, è un dato di fatto. Tuttavia, alcune versioni di Windows Server utilizzeranno più di 4 GB con PAE abilitato.

Per quelli che vanno "il tuo PAE sbagliato ti consentirà di utilizzare più di 4 GB", sì, sono d'accordo, tuttavia, Microsoft afferma che puoi utilizzare solo 4 GB sulla maggior parte del sistema operativo desktop a 32 bit, quindi se ritieni che la pagina sia in errore, inviali una e-mail o chiamarli per lamentarsi.


4 GB è un limite artificiale. L'hardware Intel può gestire molto di più. Anche un sistema operativo a 32 bit, allocando la memoria in pagine di 4K e supponendo che memorizzi il numero di pagina in un numero intero a 32 bit, può facilmente gestire 4 GB x 4K = 16 TB. Per applicazione, il limite di indirizzamento byte per un registro a 32 bit è di 4 GB. Quindi, se MS dice 4 GB per il sistema operativo, questo è semplicemente un hype di marketing, supportato da una semplice limitazione che l'articolo citato nella mia risposta ha localizzato a pochissime istruzioni hardware nel kernel.
harrymc,

2
Rileggi nuovamente il mio post, per favore, Microsoft ha questo limite a causa delle licenze. Non ho mai detto che non puoi usare più di 4 GB in un sistema operativo a 32 bit, semplicemente non puoi nelle versioni desktop di Windows, punto. Questi sono i fatti Per "riparare" non è nemmeno una semplice correzione del registro. Hai bisogno di un disassemblatore, un editor esadecimale, conoscenza dell'Assemblea e un po 'di fortuna.
Natalie Adams,

5

Qualcuno mi ha detto che MS Windows 7 a 32 bit non supporta RAM di dimensioni superiori a 3 GB.

Qualcuno ha torto. I sistemi operativi desktop Windows a 32 bit supportano fino a 4 GB di memoria fisica. Tuttavia, a causa delle limitazioni hardware dell'architettura x86, sono disponibili solo 3,5 ~ GB per il sistema operativo se sono installati 4 GB.


2
Questo non è corretto Linux a 32 bit, ad esempio, non ha problemi a supportare 4 GB di RAM. O, diciamo, 64 GB di RAM, anche se ovviamente con limiti per processo. Diamine, alcune versioni di Windows a 32 bit supportano più di 4 GB di RAM. Vedi en.wikipedia.org/wiki/…
ChrisInEdmonton

2
cosa non è corretto ??? Windows a 32 bit supporta fino a 4 GB di memoria fisica, fine della storia (a meno che non sia limitata da altri fattori, ad esempio le edizioni 'starter'), questa tabella a cui ti riferisci COMPRENDE le versioni a 64 bit di Windows come le prime finestre 2000 avanzate server e data center.

1
"Microsoft Windows 2000 Advanced Server Limited Edition e Windows 2000 Datacenter Server Limited Edition sono stati progettati per microprocessori Intel Itanium a 64 bit."

1
Windows 2000 Advanced Server utilizza PAE su sistemi a 32 bit per accedere fino a 8 GB di RAM. C'è anche una versione IA-64, ma non è quella di cui sto parlando.
ChrisInEdmonton,

1
beh, non mi interessa molto di questa argomentazione o confronti con server esotici / obsoleti o sistemi operativi * nix, l'OP ha affermato che Windows 7 a 32 bit non supporta più di 3 GB di RAM che è SBAGLIATO, supporta fino a 4 GB, capito? ma per farti piacere modificherò la mia risposta di conseguenza.

3

Solo curioso, puoi dare alcuni esempi di programmi che non funzionano su Windows a 64 bit? Windows a 64 bit poiché Windows XP ha un'eccellente compatibilità con i programmi a 32 bit. Controlla la quinta domanda in questa pagina: h ttp: //windows.microsoft.com/en-US/windows-vista/32-bit-and-64-bit-Windows-frequently-asked-questions . Prendiamo ad esempio Microsoft Office, è tutto a 32 bit, ma funziona alla grande su Windows a 64 bit.

L'unica volta che non vorresti passare a 64 bit è se hai hardware che non ha driver a 64 bit. I driver hardware devono corrispondere alla piattaforma del sistema operativo.


Il software Juniper VPN utilizzato dal mio datore di lavoro non funziona su un sistema operativo a 64 bit.
Jeff Shattock,

2
Il software VPN rientra maggiormente nella categoria "driver".
sfornato il

Ho molti programmi "arabi" che non funzionano con 64 bit. Inoltre ho un hardware "vecchio" non ha driver a 64 bit.
Wahid Bitar,


-4

Il link seguente indica un modo per

  • prendi una copia del kernel
  • incidere in modo da utilizzare 4 GB e al di sopra di RAM (modificare le stringhe esadecimali 7C 11 8B 45 FC 85 C0 74 0Ae 7C 10 8B 45 FC 85 C0 74 09per 7C 10 B8 00 00 02 00 90 90e 7C 10 B8 00 00 02 00 90 90rispettivamente)
  • firmalo con makecert -r -ss my -n "CN=My Cert"esigntool sign -s my -n "My Cert" ntkl64g.exe
  • e aggiungilo come opzione di avvio secondaria con bcdedit

in modo molto chiaro e diretto

http://www.evga.com/forums/tm.aspx?m=960087&mpage=1&print=true

Che ha funzionato per me.

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.