Existe maneira de habilitar mais de 4 GB de RAM no sistema operacional Windows de 32 bits?

22

Atualizei meu PC para 4 GB de RAM e recebo apenas 3 GB. O Windows 7 de 32 bits considera que tenho 4 GB de RAM, mas não usei mais de 3 GB.

Alguém me disse que o MS Windows 32 bits não suporta RAM maior que 3 GB.

Então, por favor, existe alguma maneira de fazer o meu sistema operacional "Windows 7 32-Bit" suportar mais de 3 GB de RAM?

* `Nota: Não consigo passar para 64 bits porque tenho muitos programas que não funcionam com um sistema operacional de 64 bits.

Editar::

Eu tentei o que o Sr. Wonsungi me aconselhou, mas sempre que eu marcar essa opção:

Enable support for 4 GB of RAM

Estou tendo o erro a seguir:

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

Não há "CLSID" no meu registro, não sei por que !.

Wahid Bitar
fonte
23
"Muitos programas não funcionam com sistemas operacionais de 64 bits" não é realmente um motivo válido na era dos computadores virtuais. com o VirtualBox (que é gratuito), você pode executar seus aplicativos de 32 bits em uma máquina virtual Windows de 32 bits no modo contínuo (integrado ao sistema operacional host) e dificilmente sentirá a diferença (a menos que precise da potência total de seus gráficos) disponível para essas aplicações)
Eu concordo com Molly. E para programas de 16 bits, você pode usar um emulador como o DOSBox. dosbox.com
Sasha Chedygov 08/11/2009
1
Se você possui o Windows 7 Professional, Enterprise ou Ultimate, considerar verificar o Modo Windows XP: microsoft.com/windows/virtual-pc
alex
Estou usando muitos programas de 32 bits no Win7 64bit. Eles datam de 1998 a 2001. A maioria exige modos de compatibilidade para funcionar. Você está assumindo que não vai funcionar ou alguém lhe disse que não vai funcionar? Você realmente tentou?
kmarsh
Anúncio Edit1: eu entendi que você ainda não atualizou para 4 GB ... então você ainda não sabe se funciona ou não, certo? Para garantir que funcione, você precisa atualizar o b / c, não apenas para o Win, mas também para as limitações de HW. Faça a atualização e, em seguida, forneça informações mais detalhadas sobre sua configuração, se não funcionar.
Gerd Klima

Respostas:

11

Você pode usar o PAE, mas não é tão bom quanto apenas 64 bits. Verifique esta página do MSDN.

Ativando o PAE

O Windows habilita o PAE automaticamente se a DEP estiver habilitada em um computador compatível com a DEP habilitada por hardware ou se o computador estiver configurado para dispositivos de memória de adição quente a intervalos de memória superiores a 4 GB. Se o computador não suportar a DEP ativada por hardware ou não estiver configurado para dispositivos de memória de adição quente em intervalos de memória além de 4 GB, o PAE deverá ser explicitamente ativado.

Para ativar explicitamente o PAE, use o seguinte comando BCDEdit / set para definir a opção de entrada de inicialização do pae:

bcdedit /set [{ID}] pae ForceEnable

Se a DEP estiver ativada, o PAE não poderá ser desativado. Use os seguintes comandos BCDEdit / set para desativar o DEP e o PAE:

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

Windows Server 2003 e Windows XP : Para habilitar o PAE, use a opção / PAE no arquivo boot.ini . Para desativar o PAE, use a opção / NOPAE . Para desativar a DEP, use a opção / EXECUTE .

Dentrasi
fonte
1
Encontrei isso To explicitly enable PAE, use the following BCDEdit /set command to set the pae boot entry option: bcdedit /set [{ID}] pae ForceEnable na página do MSDN que você forneceu. Mas não sei como e onde escrever esse comando. Você poderia me ajudar por favor?
Wahid Bitar #
5
Se você não souber como fazer isso, recomendo que não faça nada , se algo der errado, você precisará desse conhecimento para resgatar seu sistema.
Phoshi #
4
o switch PAE não é um milagre oculto e certamente não é o santo graal para sistemas de 4 GB de 32 bits (ou todo mundo o usaria, certo?). isso pode causar instabilidade no sistema.
2
O switch PAE ainda não permitirá que você use todos os 4 GB de RAM. Veja minha resposta abaixo para uma solução que supera esse problema.
Breakthrough
2
"Certas versões de 32 bits do Windows Server executadas em sistemas baseados em x86 podem usar o PAE para acessar até 64 GB ou 128 GB de memória física." Esta publicação se aplica APENAS ao Windows Server - as versões desktop de 32 bits do Windows abordarão apenas 4 GB. É um problema de licenciamento e não de hardware ou software. A execução desse comando não altera esse fato - msdn.microsoft.com/en-us/library/aa366778(v=vs.85).aspx .
Natalie Adams
13

Leia isto: Cara, cadê meus 4 Gigabytes de RAM?

Para informações gerais, também há esta visão geral dos limites de memória por edição do Windows:

Limites de memória para versões do Windows

Gerd Klima
fonte
Eles dizem que é um problema do X86. Você pode me explicar por que o OSX de 32 bits não tem problema ao abordar 16 Gb em um MacPro?
bert
A propósito, em terrenos de 8 e 16 bits, era muito comum ter quantidades de RAM além de bytes de 2 ^ bits.
bert
4
A entrada da wikipedia para PAE (Extensão de endereço físico) afirma: Mac OS X O Mac OS X para Macs Intel suporta PAE e o bit NX em todas as CPUs suportadas pela Apple (a partir da 10.4.4 - a primeira versão da Intel - em diante). Atualmente, os sistemas Mac Pro e Xserve podem suportar 32 GiB de RAM, mesmo que o kernel do Mac OS X 10.5 Leopard permaneça 32 bits. O núcleo Mac OS X 10,6 leopardo de neve pode, opcionalmente, ser executado em 64 bits em certos sistemas en.wikipedia.org/wiki/Physical_Address_Extension
Gerd Klima
1
O OSX 32 e o Linux Kernel 2.6 32 são essencialmente sistemas operacionais de 32/64 bytes, usando principalmente instruções de 32 bits, mas usando algum endereçamento de memória de 64 bits, principalmente para o sistema de arquivos e a alocação de memória de O / S. Os programas em execução ainda estão sujeitos a algumas limitações de 32 bits.
kmarsh
5
Isto está incorreto. As versões de 32 bits do Linux Kernel não são um sistema operacional estranho de 32/64 bytes (sic). São sistemas operacionais de 32 bits que, se as opções corretas forem selecionadas, podem usar o PAE para endereçar 2 ^ 36 bytes de memória, embora menos de 2 ^ 32 por processo. Se o kernel é de 64 bits, ele usa endereçamento de 64 bits.
ChrisInEdmonton
11

Recentemente, um grupo de programadores lançou um patch de kernel para o Windows 7 para permitir o uso de mais de 4 GB de RAM no Windows 7. Clique aqui para baixar o patch ou ver mais informações sobre ele . O patch basicamente modifica o kernel do Windows 7 para se parecer mais com o Windows Server 2003 Datacenter Edition, compatível com até 8 GB de RAM no modo de 32 bits.

O patch permite estender o PAE para 8 GB de RAM no Windows 7 de 32 bits. Para obter mais informações sobre por que a Microsoft implementou essa limitação técnica, consulte este artigo .

Observe que os processos individuais ainda serão limitados a 4 GB, mesmo que o sistema possa acessar mais ... Embora se você tivesse 8 GB de RAM, pelo menos ainda teria outros 4 GB para outros processos;)

Avanço
fonte
1
Estou usando esse patch há meses e não tive problemas. Alguns programas (especialmente o Photoshop) não têm problemas ao usar muita memória RAM. :)
avanço
1
Lembre-se de que modificar os arquivos do sistema viola a licença do produto e anula a garantia.
25412 kinokijuf
Eu quero gritar e dizer que o hack provavelmente funcionará por algum tempo. Mas atualizar o seu sistema provavelmente seria um jogo de roleta russa - a Microsoft provavelmente não irá tapar propositalmente o buraco do kernel, mas uma atualização pode deixar o sistema entupido.
Natalie Adams
@ Nathanathan: este não é um "buraco", é um resultado da memória licenciada (veja o artigo ao qual vinculei acima). Esse patch também copia o kernel existente antes de corrigi-lo; portanto, se você estiver preocupado, basta inicializar o Windows sem o patch para executar o Windows Update.
Breakthrough
8

Até onde eu sei, o Windows de 32 bits pode usar memória de até 64 GB e pode ser "hackeado" para fazer isso.
Esse hack é totalmente descrito aqui: Memória Licenciada no Windows Vista .
(Nota: não aconselho ninguém a experimentá-lo.)
Também faz uma leitura interessante, pois explica muito bem todos os conceitos envolvidos.
Eu reproduzo abaixo de sua imagem de prova de conceito.

O fato de as edições de 32 bits do Windows Vista estarem limitadas a 4 GB não se deve a nenhuma restrição física ou técnica nos sistemas operacionais de 32 bits. Todas as edições de 32 bits do Windows Vista contêm código para o uso de memória física acima de 4 GB. A Microsoft simplesmente não licencia você para usar esse código.

imagem

harrymc
fonte
Por favor, veja meu comentário acima, o Vista e acima reportarão a memória TOTAL FÍSICA nessa janela. Esse NÃO é o valor total que o sistema operacional usará. Por um lado, tenho certeza de que o hack está desatualizado e provavelmente não funcionará no Vista SP2. Além disso, os processadores de 64 bits estão sendo a norma, portanto, não há razão para não usar um sistema operacional de 64 bits.
Natalie Adams
@ Nathan: O artigo que citei faz uma leitura muito convincente. Pelo que sei sobre a arquitetura Intel, 32 bits ou não, o único limite real deve ser de 4 GB por aplicativo .
harrymc 11/11/2009
Tenho certeza de que isso viola o EULA. Portanto, eu NÃO recomendaria instalar esse patch.
Natalie Adams
@ Nathan Adams: Nem eu recomendo.
harrymc
7

A resposta a esta pergunta é realmente "depende de quem você pergunta".

Alguns dizem usar o PAE, o que permitirá que você endereça mais de 4 GB, mas a Microsoft NÃO o deixará em muitas das versões de 32 bits do Windows.

http://msdn.microsoft.com/en-gb/library/aa366778(VS.85).aspx
A tabela a seguir especifica os limites de memória física para o Windows 7.

Limite físico de 4 GB, ponto final. É uma questão de licenciamento. Pode até haver um "hack" flutuando para permitir que você use mais de 4 GB, mas não me lembro.

Observe: o Vista e o Windows 7 em 32 bits reportarão a RAM FÍSICA TOTAL que você possui no sistema, mas usará apenas 4 GB dela. Portanto, empurrar 16 GB em um computador executando o Windows de 32 bits usará apenas 4 GB DE ACORDO COM A MICROSOFT, mesmo que o painel de controle "Sistema" mostre 16 GB. O Windows 7, Vista e XP de 32 bits usará apenas 4 GB de RAM, é um fato. No entanto, certas versões do Windows Server usarão mais de 4 GB com o PAE ativado.

Para aqueles que "seu PAE errado permitirá que você use mais de 4 GB", sim, eu concordo, no entanto, a Microsoft diz que você só pode usar 4 GB na maioria dos sistemas operacionais de 32 bits para desktop; portanto, se você achar que a página está errada, envie-os um e-mail ou ligue para reclamar.

Natalie Adams
fonte
4 GB é um limite artificial. O hardware Intel pode lidar com muito mais. Mesmo um sistema operacional de 32 bits, alocando memória em páginas de 4K e assumindo que ele armazena o número da página em um número inteiro de 32 bits, pode lidar facilmente com 4 GB x 4K = 16 TB. Por aplicativo, o limite de endereçamento de bytes para um registro de 32 bits é de 4 GB. Portanto, se a MS indicar 4 GB para o sistema operacional, isso é simplesmente um hype de marketing, apoiado por uma simples limitação que o artigo citado em minha resposta localizou em poucas instruções de hardware no kernel.
harrymc 11/11/2009
2
Releia minha postagem novamente, por favor, a Microsoft tem esse limite devido ao licenciamento. Eu nunca disse que você não pode usar mais de 4 GB em um sistema operacional de 32 bits, simplesmente não pode nas versões para desktop do Windows, ponto final. Estes são os fatos. Para "consertar", também não é uma correção simples do registro. Você precisa de um desmontador, um editor hexadecimal, conhecimento de montagem e um pouco de sorte.
Natalie Adams
5

Alguém me disse que o MS Windows 7 de 32 bits não suporta RAM superior a 3 GB.

Alguém está errado. Os sistemas operacionais de desktop Windows de 32 bits suportam até 4 GB de memória física. No entanto, devido às limitações de hardware da arquitetura x86, apenas 3,5 ~ GB estão disponíveis para o sistema operacional se 4 GB estiverem instalados.

Peter Mortensen
fonte
2
Isto está incorreto. O Linux de 32 bits, por exemplo, não tem problemas para suportar 4 GB de RAM. Ou, digamos, 64 GB de RAM, embora com limites por processo, é claro. Heck, algumas versões do Windows de 32 bits suportam mais de 4 GB de RAM. Veja en.wikipedia.org/wiki/…
ChrisInEdmonton
2
o que está incorreto ??? As janelas de 32 bits suportam até 4 GB de memória física, fim da história (a menos que sejam limitadas por outros fatores, ou seja, as edições iniciais), esta tabela que você está consultando INCLUI versões de 64 bits das janelas, como o Windows 2000 avançado servidor e data center. para
1
"O Microsoft Windows 2000 Advanced Server Limited Edition e o Windows 2000 Datacenter Server Limited Edition foram projetados para microprocessadores Intel Itanium de 64 bits."
1
O Windows 2000 Advanced Server usa PAE em sistemas de 32 bits para acessar até 8 GB de RAM. Há também uma versão IA-64, mas não é sobre isso que estou falando.
31420 ChrisInEdmonton
1
bem, eu não ligo muito para essa argumentação ou comparação com servidor exótico / desatualizado ou sistemas operacionais * nix, o OP alegou que o Windows 7 de 32 bits não suporta mais de 3 GB de RAM, o que é ERRADO, suporta até 4GB, entendeu? mas, para agradar a você, editarei minha resposta de acordo.
3

Apenas curioso, você pode dar alguns exemplos de programas que não funcionam em janelas de 64 bits? Windows de 64 bits desde o Windows XP tem excelente compatibilidade com os programas de 32 bits. Verifique a quinta pergunta nesta página: h ttp: //windows.microsoft.com/en-US/windows-vista/32-bit-and-64-bit-Windows-frequently-asked-questions . Tomemos o Microsoft Office, por exemplo, é tudo de 32 bits, mas funciona muito bem no Windows de 64 bits.

O único momento em que você não gostaria de mudar para 64 bits é se você tiver um hardware que não possui drivers de 64 bits. Os drivers de hardware devem corresponder à plataforma do SO.

churnd
fonte
O software Juniper VPN que meu empregador usa não funciona em um sistema operacional de 64 bits.
9119 Jeff Shattock
2
O software VPN se enquadra mais na categoria "driver".
churnd
Eu tenho muitos programas "árabes" que não funcionam com 64 bits. Também tenho algum hardware "antigo" que não possui drivers de 64 bits.
Wahid Bitar
-4

O link abaixo mostra uma maneira de

  • tire uma cópia do kernel
  • corte-o para usar 4 GB ou mais de RAM (edite as seqüências hexadecimais 7C 11 8B 45 FC 85 C0 74 0Ae 7C 10 8B 45 FC 85 C0 74 09para 7C 10 B8 00 00 02 00 90 90e 7C 10 B8 00 00 02 00 90 90respectivamente)
  • assine com makecert -r -ss my -n "CN=My Cert"esigntool sign -s my -n "My Cert" ntkl64g.exe
  • e adicione-o como uma opção de inicialização secundária com bcdedit

de uma maneira muito clara e direta

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

O que funcionou para mim.

Jamie Kitson
fonte