Come posso abilitare PAE su Windows 7 (32 bit) per supportare più di 3,5 GB di RAM?


37

So che Windows XP a 32 bit può essere configurato, tramite PAE , per supportare più di 3,5 GB di RAM. Esiste un buon tutorial per farlo con Windows 7 a 32 bit?

Per quanto riguarda il motivo per cui non utilizzo semplicemente Windows 7 a 64 bit: il software per la mia connessione Internet (telefono cellulare come modem) funziona solo in ambienti a 32 bit.


A meno che non si utilizzino applicazioni progettate appositamente per sfruttare le estensioni PAE a 36 bit nella CPU e nell'API AWE, non è assolutamente NECESSARIO utilizzare lo switch PAE.

17
Molly: In realtà c'è un punto su PAE anche con app che non sono consapevoli dell'indirizzamento a 36 bit. Anche se ogni app può accedere solo a 2 GB di memoria, è possibile eseguire più app, ognuna con i propri 2 GB.
davr

@ Molly7244 AWE e PAE non hanno nulla a che fare l'uno con l'altro. È utile utilizzare PAE senza RAM estesa, ovvero abilitare la protezione hardware No-Execute. Su un processore x86 non c'è NX senza PAE.
Jamie Hanrahan,

@JamieHanrahan AWE utilizza PAE.
ctrl-alt-delor

@ ctrl-alt-delor Siamo spiacenti, ma è chiaramente un malinteso, perché AWE funziona su sistemi Windows a 32 bit in cui PAE non è abilitato. Diamine, AWE funziona anche su sistemi in cui PAE non è nemmeno un'opzione (x64, ARM, Itanium - quelle CPU non supportano PAE). È vero che su un sistema Windows x86 a 32 bit senza PAE abilitato, un'app compatibile con AWE non troverà molta RAM per farti aprire "windows", ma funzionerà all'interno della RAM disponibile. AWE non dipende affatto da PAE; è solo che su x86, avere PAE + più di 4 GB di RAM supportati darà più RAM per far funzionare AWE (e tutto il resto).
Jamie Hanrahan

Risposte:


24

Alcuni anni fa, un gruppo di programmatori ha rilasciato una patch del kernel per Windows 7 per consentire l'utilizzo di oltre 4 GB di RAM su Windows 7. Di recente, a causa di alcuni scanner antivirus che hanno rilevato la patch come falso positivo , il download è stato rimosso dal sito Web. Fortunatamente, ho salvato una copia della patch (che utilizza il kernel RTM Windows 7) e l' ho caricata sul mio sito Web qui (vedere l'opzione n. 1 quando discuto i due metodi per correggere il kernel di Windows). Inoltre, gli autori hanno pubblicato istruzioni su come patchare il kernel manualmente.

Anche se hai Windows 7 SP1 (Build 7601), puoi installare la patch che contiene il kernel 7600. Questo perché il tuo kernel predefinito non viene modificato; uno nuovo viene copiato nella cartella di sistema e un'ulteriore opzione del menu di avvio viene aggiunta per avviare Windows con il nuovo kernel con patch invece di quello precedente. Anche se non ho riscontrato alcun problema con Windows 7 SP1 con il kernel precedente, se si desidera utilizzare la build 7601 di ntkrnlpa.exe, è necessario correggere manualmente il kernel (consultare il collegamento sopra).


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. Ciò consente di estendere bene PAE a 8 GB di RAM in Windows 7 a 32 bit. Per ulteriori informazioni sul motivo per cui Microsoft ha implementato questa limitazione tecnica, consultare Memoria con licenza in Windows Vista a 32 bit (richiede che JavaScript sia autorizzato da www.geoffchappell.com ).

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


Per coloro che sono interessati agli aspetti tecnici, ciò accade a causa dell'input / output mappato in memoria (MMIO in breve). Ciò consente a una CPU di accedere sia alle periferiche che alla RAM tramite il bus degli indirizzi stesso. Di solito ciò avviene attraverso gli indirizzi di memoria di ordine superiore per evitare conflitti di indirizzi di ordine inferiore. Tuttavia, ciò ha dato origine alla barriera di memoria da 3 GB comunemente nota in tutte le varianti consumer dei sistemi operativi Windows a 32 bit.


4
Attenzione: quel primo collegamento ha alcuni contenuti NSFW.
Jon Seigel,

Avviso aggiunto alla risposta, grazie. Non ho nemmeno notato che: S
Breakthrough

Qualche informazione sul fatto che funzioni bene o sia inaffidabile?
Mark Gibaud,

1
@Mark Gibaud L'ho usato per un anno senza problemi. Avevo solo 4 GB di RAM, ma almeno sono stato in grado di utilizzare tutto. Nota che la patch modifica il kernel di Windows, quindi farei un backup prima di correggere il tuo sistema. Detto questo, non ho mai avuto problemi (ho applicato la patch sia sul desktop che sul laptop alcune volte senza problemi, anche dopo aver installato tutto).
Sfondamento

1
@Breakthrough: è fantastico. Sai per caso come far fare a XP qualcosa di simile?
Mehrdad,

17

Questo articolo sul sito MSDN di Microsoft mostra i limiti di memoria per le versioni di Windows e Windows 7 a 32 bit è elencato come limite di 4 GB.

In passato era possibile utilizzare PAE per visualizzare più di 4 GB di RAM con Windows XP, ma questa opzione era disabilitata nel Service Pack 2 .

Il motivo era che la maggior parte dei conducenti non erano a conoscenza di PAE e hanno gettato i loro giocattoli fuori dalla carrozzina se sono finiti in memoria oltre il limite di 4 GB.

Se usi lo /PAEswitch ora su Windows XP, renderai disponibile DEP , ma non sarai in grado di vedere più di 4 GB di RAM.

Questo limite di 4 GB è ancora in vigore per Windows 7 a 32 bit. Se vuoi vedere più di 4 GB di RAM dovrai usare una versione di Windows a 64 bit.

(Questa opzione per usare PAE per vedere più di 4 GB di RAM è ancora disponibile nelle versioni Server a 32 bit di Windows che presumo sia dovuta a una migliore qualità dei driver previsti per il tipo di hardware su cui eseguiresti Windows Server. )


2
Penso che il supporto del server sia meno dovuto alla migliore qualità del driver e più dovuto al fatto che gli amministratori di sistema saranno in grado di gestire la situazione molto meglio di una mamma.
Will Eddins,

1
"Il motivo era che la maggior parte dei conducenti non erano a conoscenza di PAE e hanno gettato i loro giocattoli fuori dalla carrozzina se sono finiti in memoria oltre il limite di 4 GB." - Questo vale tanto per Windows 7 a 32 bit (usando l'hack del kernel)?
Mark Gibaud,

2
Il grande Mark Russinovich spiega la logica alla base dei limiti di memoria del client e del server sotto Windows nella sua serie di post sul blog "Pushing the Limits of Windows". blogs.technet.com/b/markrussinovich/archive/2008/07/21/…
ElvisFanTCB

Il limite di Windows 7 da 4 GB include l'hardware? Ho impostato PAE e ho circa 3,15 GB. C'è circa 1 GB di hardware (potenziale) che utilizza il resto e ms-windows blocca l'utilizzo di oltre 4 GB. Su Gnu / Linux ottengo tutti i 4 GB.
ctrl-alt-delor,

@richard: il limite di indirizzi include lo spazio degli indirizzi necessario per altri hardware, le più importanti schede grafiche che possono assorbire molto 4GB.
Dave Webb,

3

Secondo l'articolo MSDN Estensione dell'indirizzo fisico :

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 .


2

PAE dovrebbe essere abilitato per impostazione predefinita: Windows lo utilizza già internamente per la funzionalità DEP / No-Execute .

Ma queste istruzioni potrebbero aiutare se Windows sta facendo di nuovo il suo lavoro.


Si noti che i singoli processi saranno comunque limitati a 4 GB anche se il sistema può accedere di più.


Quel collegamento è sbagliato. Vista a 32 bit utilizza solo PAE per DEP e non consente di visualizzare più di 4 GB di RAM. support.microsoft.com/kb/929605
Dave Webb,

Ma Niphoet (il richiedente) utilizza Windows 7, che ha un limite di 8 GB (Home Basic; ancora di più in altre versioni).
gravità

@grawity: sì, sono 8 GB se si utilizza Windows 7. 64 bit. Il limite è ancora 4 GB in Windows 7. 32 bit.
Joshua,

2

Se il sistema può supportarlo, è possibile utilizzare la virtualizzazione per consentire l'accesso ai driver del telefono a 32 bit.

Sarebbe una configurazione un po 'più complicata, ma potresti configurare una macchina virtuale che ha effettuato la connessione e ha condiviso la connessione Internet con il tuo host, in questo modo otterrai i vantaggi del 64-bit oltre a poter utilizzare i driver legacy.

VMware Workstation (commerciale), VirtualBox (gratuito, open source) e Windows Virtual PC (gratuito) possono indirizzare tutti i dispositivi USB direttamente nella macchina virtuale. Basta installare un sistema operativo a 32 bit (anche XP se lo si desidera), dargli una quantità marginale di RAM e puoi fare ciò di cui hai bisogno. L'ho fatto per caricare applicazioni legacy che non supportavano Windows 7 e mio fratello ha effettivamente caricato la sua vecchia webcam Creative (senza driver a 64 bit) e ha usato Skype attraverso la sua macchina virtuale.


Ha Windows 7 ... hai completamente dimenticato di menzionare "XP Mode", che è la nuova funzionalità di virtualizzazione gratuita inclusa in Windows 7.
davr

Non ho menzionato direttamente la modalità XP poiché non hanno detto se stavano eseguendo 7 Professional o Ultimate (non è disponibile per le altre SKU) :)
Joshua,

2

Windows 7 32 ha PAE che impedisce l'accesso oltre il segno da 4 GB. Vedere http://msdn.microsoft.com/en-us/library/aa366778(VS.85).aspx per i dettagli.

Per le persone là fuori che insistono sull'uso a 64 bit - ci sono alcune cose che non funzionerebbero in ambienti a 64 bit che potrebbero beneficiare di un guadagno in termini di prestazioni da un disco ram che POTREBBE accedere oltre il segno 3.25 in un ambiente a 32 bit - in particolare le applicazioni che pagina spesso. Puoi anche inserire il file di paging all'interno di detto ramdisk. Inoltre, una macchina virtuale è eccezionale, tuttavia l'emulazione non funziona mai tanto quanto la realtà: tutto dipende davvero dall'applicazione e dal modo in cui viene implementata. Ci sono ancora molti dispositivi hardware che non funzioneranno in un mondo a 64 bit e hanno bisogno dell'accesso in tempo reale per farli funzionare bene (mentre ci sono acceleratori che aiutano con l'accesso in tempo reale, può ancora presentare problemi).

Quindi, mentre 64 bit è tecnicamente superiore, 32 bit è un retaggio che richiederà un po 'di tempo e ci saranno molte ragioni per cui le persone vorrebbero accedere alla memoria tramite PAE.

PS: c'è una risposta a questo post affermando che mettere un file di paging sul disco RAM non ha senso. Lasciatemi spiegare. Se il sistema ha 4 GB di RAM e si crea un disco da 2 GB di RAM e si inserisce il file di paging, quindi sì, questa configurazione non ha senso. Tuttavia, se il sistema ha 8 GB di RAM e si crea un disco da 4 GB di RAM (accedendo alla memoria aggiuntiva che Windows a 32 bit non è in grado di raggiungere) e si inserisce il file di paging (e la cartella temporanea, si attiva "ReadyBoost" e si aggiunge qualsiasi altro usato frequentemente file) lì, quindi sì, l'accelerazione è molto considerevole. E "sì" è la risposta, è possibile ottenere software che consente di creare dischi RAM superiori al limite di 4 GB su sistemi a 32 bit.


5
Mettere il tuo file di paging su un disco RAM non ha senso.
ElvisFanTCB,

Mettere il tuo file di paging su un RAMdisk non ha senso solo quando la RAM è normalmente disponibile nel sistema, che non è questo il caso.
Vojtěch Dohnal,

2

NON UTILIZZARE IL PATCH, è semplicemente una versione di prova tedesca di Windows, e metterai a dura prova il tuo record di avvio.

Ho appena trascorso un'ora a scaricare easybcd su un altro computer per risolvere questo problema.

Stai attento!


La 'patch' è abbastanza semplice da fare da soli e non è necessario 'easybcd' per correggere i record di avvio: è abbastanza banale correggere il record di avvio con bcdedit.exe ... RTFM
Eddie B,

1

La domanda è "Come posso abilitare PAE su Windows 7 (32 bit) per supportare più di 3,5 GB di RAM" e la risposta è digitare il prompt dei comandi "bcdedit / set [{ID}] per ForceEnable".

Ma, probabilmente, la domanda è degna di essere riformulata su come abilitare ed essere in grado di utilizzare più di 3,5 (o 3,25) GB di RAM sul sistema W7 a 32 bit.

Ho provato PAE in 2 schede madri desktop diverse con sistemi identici: scheda madre Intel® D945GNT per sistemi desktop con processore Intel® Pentium® D da 3,4 GHz e RAM utilizzabile da 3,00 GB e scheda madre Intel® DG41WV per sistemi desktop con Intel® E7500 da 2,93 GHZ e RAM utilizzabile da 3,25 GB . Capacità 64 bit e Ram da 4 GB.

I 2 sistemi hanno abilitato PAE; quindi, usando la procedura indicata in http://www.jensscheffler.de/using-gavotte-ramdisk-in-windows-7 ho installato il disco di Gavotte Ram e ho recuperato 16 MB di RAM (nulla) sul primo sistema, ma ho recuperato l'intero 775 MB inutilizzato per il secondo.

Quindi, nel disco Ram del secondo sistema, ho assegnato un file pagesys mobile ad esso, da 16 MB a 700 MB, e un file pagine mobile da 16 MB a 3300 MB su una partizione di un diverso disco fisico del sistema.

Ho dimostrato 2 fatti: 1. I sistemi hanno preferito il file di scambio Ram rispetto a quello nel disco rigido. L'ho visto muoversi, crescere e restringersi. 2. Benchmark con PC Pitstop (immagine allegata in http://www.pablomolina.net/bench700.png ) mostra un notevole miglioramento della velocità del disco di sistema e il sistema funziona molto più velocemente. Sul banco ho confrontato un file di pagina da 700 MB nel disco Ram con un file di pagina da 700 MB in un'altra partizione della stessa unità di sistema.!

È necessario impostare il sistema per pulire il file di paging allo spegnimento con la procedura Microsoft kb / 314834.

Per me, PAE ha senso su un sistema a 32 bit e funziona. Non vado per il sistema a 64 bit poiché uso Windows in modo professionale e ho accumulato 450 programmi nel corso degli anni, il che mi richiederà mesi per reinstallare.


1

Se non si desidera un file patch, è possibile utilizzare un caricatore di avvio . Questo Bootloader può essere installato sul sistema corrente o su una pen drive USB. Quindi puoi facilmente testarlo senza influenzare il tuo sistema.

inserisci qui la descrizione dell'immagine

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.