Est-il possible d'activer plus de 4 Go de RAM dans un système d'exploitation Windows 32 bits?

22

J'ai mis à niveau mon PC à 4 Go de RAM et je n'obtiens que 3 Go. Windows 7 32 bits considère que j'ai 4 Go de RAM mais que je n'ai pas utilisé plus de 3 Go.

Quelqu'un m'a dit que MS Windows 32 bits ne prend pas en charge la RAM supérieure à 3 Go.

S'il vous plaît, existe-t-il un moyen de faire en sorte que mon système d'exploitation "Windows 7 32 bits" prenne en charge plus de 3 Go de RAM?

* `Remarque: je ne peux pas passer au 64 bits car plusieurs programmes ne fonctionnent pas avec un système d'exploitation 64 bits.

Modifier::

J'ai essayé ce que M. Wonsungi m'a conseillé mais chaque fois que je vérifie cette option:

Enable support for 4 GB of RAM

J'obtiens l'erreur suivante:

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

Il n'y a pas de "CLSID" dans mon registre, je ne sais pas pourquoi !.

Wahid Bitar
la source
23
«de nombreux programmes ne fonctionnent pas avec un système d'exploitation 64 bits» n'est pas vraiment une raison valable à l'ère des ordinateurs virtuels. avec VirtualBox (qui se trouve être gratuit), vous pouvez exécuter vos applications 32 bits sur une machine virtuelle Windows 32 bits en mode transparent (intégré dans le système d'exploitation hôte) et ressentir à peine une différence (sauf si vous avez besoin de la pleine puissance de vos graphiques carte disponible pour ces applications)
Je suis d'accord avec Molly. Et pour les programmes 16 bits, vous pouvez utiliser un émulateur comme DOSBox. dosbox.com
Sasha Chedygov
1
Si vous possédez Windows 7 Professionnel, Entreprise ou Intégrale, envisagez de vérifier le mode Windows XP: microsoft.com/windows/virtual-pc
alex
J'utilise de nombreux programmes 32 bits sur Win7 64 bits. Ils datent de 1998 à 2001. La plupart nécessitent des modes de compatibilité pour fonctionner. Faites-vous l'hypothèse que cela ne fonctionnera pas, ou quelqu'un vous a dit que cela ne fonctionnerait pas? Avez-vous vraiment essayé?
kmarsh
ad Edit1: J'ai compris que vous n'aviez pas encore mis à niveau vers 4 Go ... donc vous ne savez pas encore si cela fonctionne ou non, non? Pour vous assurer que cela fonctionne, vous devez mettre à niveau b / c, il y a non seulement Win mais aussi les limitations HW. Effectuez une mise à niveau, puis donnez-nous des informations plus détaillées sur votre configuration si cela ne fonctionne pas .
Gerd Klima

Réponses:

11

Vous pouvez utiliser PAE, mais ce n'est pas aussi bon que de simplement passer en 64 bits. Vérifiez cette page MSDN.

Activation de PAE

Windows active automatiquement PAE si DEP est activé sur un ordinateur qui prend en charge le DEP activé par le matériel, ou si l'ordinateur est configuré pour des périphériques de mémoire à chaud dans des plages de mémoire supérieures à 4 Go. Si l'ordinateur ne prend pas en charge le DEP activé par le matériel ou n'est pas configuré pour les périphériques de mémoire à chaud dans des plages de mémoire supérieures à 4 Go, PAE doit être explicitement activé.

Pour activer explicitement PAE, utilisez la commande BCDEdit / set suivante pour définir l'option d'entrée de démarrage pae:

bcdedit /set [{ID}] pae ForceEnable

SI DEP est activé, PAE ne peut pas être désactivé. Utilisez les commandes BCDEdit / set suivantes pour désactiver DEP et PAE:

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

Windows Server 2003 et Windows XP : pour activer PAE, utilisez le commutateur / PAE dans le fichier boot.ini . Pour désactiver PAE, utilisez le commutateur / NOPAE . Pour désactiver DEP, utilisez le commutateur / EXECUTE .

Dentrasi
la source
1
J'ai trouvé cela To explicitly enable PAE, use the following BCDEdit /set command to set the pae boot entry option: bcdedit /set [{ID}] pae ForceEnable sur la page MSDN que vous avez fournie. Mais je ne sais pas comment ni où écrire cette commande. Pourriez-vous m'aider s'il vous plaît?.
Wahid Bitar
5
Si vous ne savez pas comment procéder à partir de cela, je vous recommande fortement de ne pas le faire du tout , si quelque chose ne va pas, vous aurez besoin de ces connaissances pour sauver votre système.
Phoshi
4
le commutateur PAE n'est pas un miracle caché et certainement pas le Saint Graal pour les systèmes 4 Go 32 bits (sinon tout le monde l'utiliserait, non?). cela peut provoquer une instabilité du système.
2
Le commutateur PAE ne vous permettra toujours pas d'utiliser l'intégralité des 4 Go de RAM. Voir ma réponse ci-dessous pour une solution qui résout ce problème.
Percée du
2
"Certaines versions 32 bits de Windows Server exécutées sur des systèmes x86 peuvent utiliser PAE pour accéder à 64 Go ou 128 Go de mémoire physique." Ce message s'applique uniquement à Windows Server - les versions de bureau 32 bits de Windows ne concerneront que 4 Go. C'est un problème de licence et non un problème matériel ou logiciel, l'exécution de cette commande ne changera pas ce fait - msdn.microsoft.com/en-us/library/aa366778(v=vs.85).aspx .
Natalie Adams
13

Lisez ceci: Mec, où sont mes 4 gigaoctets de RAM?

Pour des informations générales, il y a aussi cette vue d'ensemble des limites de mémoire par édition Windows:

Limites de mémoire pour les versions de Windows

Gerd Klima
la source
Ils disent que c'est un problème X86. Pouvez-vous m'expliquer pourquoi OSX 32 bits n'a aucun problème à adresser 16 Go dans un MacPro?
bert
Soit dit en passant, en terrain 8 et 16 bits, il était très courant d'avoir des quantités de RAM supérieures à 2 ^ octets.
bert
4
L'entrée wikipedia pour PAE (Physical Adress Extension) indique: Mac OS X Mac OS X pour Intel Mac prend en charge PAE et le bit NX sur tous les processeurs pris en charge par Apple (à partir de 10.4.4 - la première version d'Intel - à partir de). Les systèmes Mac Pro et Xserve peuvent actuellement prendre en charge 32 Gio de RAM, même si le noyau Mac OS X 10.5 Leopard reste 32 bits. Le noyau Mac OS X 10.6 Snow Leopard peut éventuellement fonctionner en 64 bits sur certains systèmes en.wikipedia.org/wiki/Physical_Address_Extension
Gerd Klima
1
OSX 32 et Linux Kernel 2.6 32 sont essentiellement des systèmes d'exploitation 32/64 octets, utilisant principalement des instructions 32 bits mais utilisant un adressage mémoire 64 bits, en particulier pour le système de fichiers et l'allocation de mémoire O / S. Les programmes qui s'exécutent sur eux sont toujours soumis à des limitations de 32 bits.
kmarsh
5
Ceci est une erreur. Les versions 32 bits du noyau Linux ne sont pas un système d'exploitation étrange de 32/64 octets [sic]. Ce sont des systèmes d'exploitation 32 bits qui, si les bonnes options sont sélectionnées, peuvent utiliser PAE pour adresser 2 ^ 36 octets de mémoire, bien que moins de 2 ^ 32 par processus. Si le noyau est 64 bits, il utilise l'adressage 64 bits.
ChrisInEdmonton
11

Récemment, un groupe de programmeurs a publié un correctif de noyau pour Windows 7 pour permettre l'utilisation de plus de 4 Go de RAM sous Windows 7. Cliquez ici pour télécharger le correctif ou afficher plus d'informations à ce sujet . Le correctif modifie fondamentalement le noyau Windows 7 pour ressembler davantage à Windows Server 2003 Datacenter Edition, qui est compatible avec jusqu'à 8 Go de RAM en mode 32 bits.

Le patch vous permet d'étendre bien le PAE dans 8 Go de RAM sous Windows 7 32 bits. Pour plus d'informations sur les raisons pour lesquelles Microsoft a implémenté cette limitation technique, consultez cet article .

Notez que les processus individuels seront toujours limités à 4 Go même si le système peut accéder à plus ... Bien que si vous aviez 8 Go de RAM, vous auriez au moins encore 4 Go pour les autres processus;)

Percée
la source
1
J'utilise ce patch depuis des mois maintenant et je n'ai rencontré aucun problème. Certains programmes (en particulier Photoshop) n'ont aucun problème lors de l'utilisation de beaucoup de RAM. :)
Percée le
1
N'oubliez pas que la modification de vos fichiers système viole votre licence de produit et annule votre garantie.
kinokijuf
Je veux sonner et dire que le hack fonctionnera probablement pendant un certain temps. Mais la mise à jour de votre système serait probablement un jeu de roulette russe - Microsoft ne va probablement pas sceller intentionnellement le trou du noyau, mais une mise à jour pourrait laisser votre système bouleversé.
Natalie Adams
@NathanAdams ce n'est pas un "trou", c'est le résultat d'une mémoire sous licence (voir l'article auquel j'ai lié ci-dessus). Ce correctif copie également le noyau existant avant de le corriger, donc si vous êtes inquiet, vous pouvez simplement démarrer sous Windows sans le correctif pour exécuter Windows Update.
Percée du
8

Pour autant que je sache, Windows 32 bits peut utiliser jusqu'à 64 Go de mémoire et peut être "piraté" pour ce faire.
Ce hack est décrit en détail ici: Mémoire sous licence dans Windows Vista .
(Remarque: je ne conseille à personne de l'essayer.)
Cela rend également la lecture intéressante, car elle explique très bien tous les concepts impliqués.
Je reproduis ci-dessous son image de preuve de concept.

Le fait que les éditions 32 bits de Windows Vista soient limitées à 4 Go n'est pas dû à une contrainte physique ou technique sur les systèmes d'exploitation 32 bits. Les éditions 32 bits de Windows Vista contiennent toutes du code pour utiliser une mémoire physique supérieure à 4 Go. Microsoft ne vous autorise tout simplement pas à utiliser ce code.

image

harrymc
la source
Veuillez voir mon commentaire ci-dessus, Vista et ci-dessus rapporteront la mémoire TOTALE PHYSIQUE dans cette fenêtre. Ce n'est PAS le montant total que l'OS utilisera. D'une part, je suis sûr que le piratage est obsolète et ne fonctionnera probablement pas dans Vista SP2. De plus, les processeurs 64 bits sont la norme, il n'y a donc aucune raison de ne pas utiliser un système d'exploitation 64 bits.
Natalie Adams
@Nathan: L'article que j'ai cité est une lecture très convaincante. D'après ce que je sais de l'architecture Intel, 32 bits ou non, la seule vraie limite devrait être de 4 Go par application .
harrymc
Je suis presque sûr que cela viole le CLUF. Donc, je ne recommanderais PAS d'installer ce patch.
Natalie Adams
@Nathan Adams: Je ne l'ai pas non plus recommandé.
harrymc
7

La réponse à cette question est vraiment "dépend de qui vous demandez".

Certains disent d'utiliser PAE, ce qui vous permettra de traiter des adresses supérieures à 4 Go, mais Microsoft ne vous autorisera pas sur la plupart des versions 32 bits de Windows.

http://msdn.microsoft.com/en-gb/library/aa366778(VS.85).aspx
Le tableau suivant spécifie les limites de la mémoire physique pour Windows 7.

Limite physique de 4 Go, point final. C'est un problème de licence. Il pourrait même y avoir un "hack" flottant pour vous permettre d'utiliser plus de 4 Go, mais je ne me souviens pas.

Veuillez noter: Vista et Windows 7 sur 32 bits rapporteront la RAM PHYSIQUE TOTALE que vous avez dans le système, mais ils n'en utiliseront que 4 Go. Ainsi, pousser 16 Go dans un ordinateur exécutant Windows 32 bits n'utilisera que 4 Go SELON MICROSOFT même si le panneau de configuration «Système» affichera 16 Go. Windows 7, Vista et XP 32 bits n'utiliseront que 4 Go de RAM, c'est un fait. Cependant, certaines versions de Windows Server utiliseront plus de 4 Go avec PAE activé.

Pour ceux qui vont "votre mauvais PAE vous permettra d'utiliser plus de 4 Go", oui, je suis d'accord, cependant, Microsoft dit que vous ne pouvez utiliser que 4 Go sur la plupart des OS de bureau 32 bits, donc si vous pensez que cette page est en erreur, envoyez-les un e-mail ou appelez-les pour vous plaindre.

Natalie Adams
la source
4 Go est une limite artificielle. Le matériel Intel peut gérer bien plus. Même un système d'exploitation 32 bits, allouant de la mémoire en pages de 4K et supposant qu'il stocke le numéro de page dans un entier 32 bits, peut facilement gérer 4 Go x 4 K = 16 To. Par application, la limite d'adressage d'octets pour un registre 32 bits est de 4 Go. Donc, si MS dit 4 Go pour le système d'exploitation, il s'agit simplement d'un battage publicitaire, soutenu par une simple limitation que l'article cité dans ma réponse a localisé à très peu d'instructions matérielles dans le noyau.
harrymc
2
Relisez mon message s'il vous plaît, Microsoft a cette limite en raison de la licence. Je n'ai jamais dit que vous ne pouvez pas utiliser plus de 4 Go dans un système d'exploitation 32 bits, vous ne pouvez tout simplement pas dans les versions de bureau de Windows, point. Voilà les faits. Pour «réparer», ce n'est pas non plus une simple correction de registre. Vous avez besoin d'un désassembleur, d'un éditeur hexadécimal, d'une connaissance de l'assemblage et d'un peu de chance.
Natalie Adams
5

Quelqu'un m'a dit que MS Windows 7 32 bits ne prend pas en charge la RAM supérieure à 3 Go.

Quelqu'un a tort. Les systèmes d'exploitation de bureau Windows 32 bits prennent en charge jusqu'à 4 Go de mémoire physique. Cependant, en raison des limitations matérielles de l'architecture x86, seuls 3,5 ~ Go sont disponibles pour le système d'exploitation si 4 Go sont installés.

Peter Mortensen
la source
2
Ceci est une erreur. Linux 32 bits, par exemple, n'a aucun problème à prendre en charge 4 Go de RAM. Ou, disons, 64 Go de RAM, mais avec des limites par processus bien sûr. Heck, certaines versions de Windows 32 bits prennent en charge plus de 4 Go de RAM. Voir en.wikipedia.org/wiki/…
ChrisInEdmonton
2
qu'est-ce qui est incorrect ??? Windows 32 bits prend en charge jusqu'à 4 Go de mémoire physique, fin de l'histoire (sauf si limité par d'autres facteurs, c'est-à-dire les éditions `` starter ''), ce tableau auquel vous faites référence INCLUT les versions 64 bits de Windows telles que les premières fenêtres 2000 avancées serveur et centre de données. clarifiez les faits, citez: "Le tableau comprend des versions 64 bits"
1
"Microsoft Windows 2000 Advanced Server Limited Edition et Windows 2000 Datacenter Server Limited Edition ont été conçus pour les microprocesseurs Intel Itanium 64 bits."
1
Windows 2000 Advanced Server utilise PAE sur les systèmes 32 bits pour accéder jusqu'à 8 Go de RAM. Il existe également une version IA-64, mais ce n'est pas celle dont je parle.
ChrisInEdmonton
1
eh bien, je ne me soucie pas beaucoup de cette argumentation ou de ces comparaisons avec des serveurs exotiques / obsolètes ou des systèmes d'exploitation * nix, l'OP a affirmé que Windows 7 32 bits ne prend pas en charge plus de 3 Go de RAM, ce qui est faux, il prend en charge jusqu'à 4 Go, compris? mais pour vous plaire, je modifierai ma réponse en conséquence.
3

Juste curieux, pouvez-vous donner quelques exemples de programmes qui ne fonctionnent pas sur les fenêtres 64 bits? Windows 64 bits depuis Windows XP a une excellente compatibilité descendante avec les programmes 32 bits. Vérifiez la 5ème question sur cette page: h ttp: //windows.microsoft.com/en-US/windows-vista/32-bit-and-64-bit-Windows-frequently-asked-questions . Prenez Microsoft Office par exemple, tout est en 32 bits, mais fonctionne parfaitement sous Windows 64 bits.

La seule fois où vous ne voudriez pas passer au 64 bits, c'est si vous avez du matériel qui n'a pas de pilotes 64 bits. Les pilotes matériels doivent correspondre à la plate-forme du système d'exploitation.

churnd
la source
Le logiciel Juniper VPN que mon employeur utilise ne fonctionne pas sur un système d'exploitation 64 bits.
Jeff Shattock
2
Les logiciels VPN relèvent davantage de la catégorie des "pilotes".
churnd
J'ai de nombreux programmes "arabes" ne fonctionne pas avec 64 bits. J'ai aussi du "vieux" matériel qui n'a pas de pilotes 64 bits.
Wahid Bitar
-4

Le lien ci-dessous indique une manière de

  • prendre une copie du noyau
  • pirater à utiliser 4 Go et au- dessus de la RAM (modifier les chaînes hexagonales 7C 11 8B 45 FC 85 C0 74 0Aet 7C 10 8B 45 FC 85 C0 74 09à 7C 10 B8 00 00 02 00 90 90et 7C 10 B8 00 00 02 00 90 90respectivement)
  • signez avec makecert -r -ss my -n "CN=My Cert"etsigntool sign -s my -n "My Cert" ntkl64g.exe
  • et l'ajouter comme option de démarrage secondaire avec bcdedit

d'une manière très claire et simple

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

Ce qui a fonctionné pour moi.

Jamie Kitson
la source