RAM de 3 GB instalada e detectada pelo BIOS, apenas Windows Vista 32 bits vê 2 GB

9

Estou tentando instalar mais RAM em uma máquina Windows Vista de 32 bits que usa uma placa- mãe X6DAL-XG e a quantidade de RAM relatada no BIOS é de 3 GB +, mas o Windows está relatando apenas 2 GB instalados. A placa-mãe possui 6 compartimentos de RAM que eu preenchi com várias combinações de 4 bastões de 1 GB e 2 bastões de 512 MB, mas não importa como eu os configurei, o Windows não vê mais de 2 GB. Percebo que o Windows de 32 bits possui um limite de 3 GB na memória, mas isso não explica por que ele só reportará 2 GB quando há (atualmente) 5 GB instalados. Eu acho que seria capaz de ver pelo menos 3 GB.

De acordo com a lista de especificações da placa-mãe, os requisitos mínimos de RAM são DDR333 / 266mhz instalado em pares. Fiz isso exatamente e o BIOS não está relatando nenhum problema no POST.

Configuração de RAM (de acordo com a CPU-Z)

  • Slot # 1: PQI MD6412ROE - 512mb PC2700 (166mhz)
  • Slot # 2: PQI MD6412ROE - 512mb PC2700 (166mhz)
  • Slot nº 3: Kingston 128mx72D266C25 - 1024mb PC2100 (133mhz)
  • Slot # 4: Kingston KVR266X72RC25 / 1024 - 1024mb PC2100 (133mhz)
  • Slot # 5: Kingston 128mx72D266C25 - 1024mb PC2100 (133mhz)
  • Slot # 6: Kingston KVR266X72RC25 / 1024 - 1024mb PC2100 (133mhz)

Não tenho certeza se as especificações de memória acima estão em conflito com esta afirmação no manual da placa - mãe ou não:

Suporte de memória

O X6DAL-XG suporta até 12 GB / 24 GB de memória ECC DDR333 / 266 (PC2700 / PC2100) registrada. A placa-mãe foi projetada para suportar módulos de 4 GB (PC2100) em cada slot, mas apenas os módulos de 2 GB foram testados. Ao usar a memória ECC DDR333 (PC2700) registrada, a instalação de quatro pedaços de memória de banco duplo ou seis de memória de banco único é suportada.

Então, estou fazendo algo errado com a RAM que tenho agora ou há algum tipo de problema de compatibilidade que estou perdendo?

Obrigado!


Alguns detalhes

  • Relatório CPU-Z para a máquina
  • Eu executei alguns testes adicionais com esse problema no Ubuntu e no Windows Server 2008 e ambos estão relatando apenas 2 GB também.
  • Tentei mexer no recurso Remapeamento de memória (Ativar / Desativar) na configuração Northbridge da minha placa-mãe, mas não obtive nenhum resultado.
  • Além do hardware acima, eu tenho uma placa de vídeo PCI Express de 256mb e é isso para periféricos. Eu não acho que a E / S mapeada na memória é o problema aqui.
  • Eu removi os 2 bastões de 512mb e reduzi apenas os 4 bastões de 1 GB
  • Atualizei o BIOS da placa-mãe para a revisão mais recente do fabricante

Outra atualização

Eu consegui testar essa configuração de hardware em uma cópia de 64 bits do Ubuntu e a RAM está sendo totalmente detectada em 4 GB instalados , mas não importa a configuração da RAM, não consigo encontrar nenhum sistema operacional de 32 bits com mais de 2 GB. Portanto, a pergunta permanece: por que um sistema operacional de 64 bits pode ver mais de 2 GB de RAM, enquanto um sistema operacional de 32 bits instalado na mesma máquina está atingindo 2 GB?


Depois de Pensamentos

Agradeço imensamente a opinião de todos, no entanto, ainda não acho que tenha havido uma resposta correta para esse problema, apesar de todos os seus esforços. Aprendi, graças ao @Goyuix, que estou usando uma CPU de 64 bits e nem percebi e, agora, pelo menos, tenho um trabalho aceitável.

Exceto por uma mudança inesperada de eventos, parece que a recompensa será creditada automaticamente no @Mark Booth devido à expiração da recompensa, o que não me importo necessariamente porque a resposta dele é boa ; simplesmente não é a solução para esse problema em particular. (Absolutamente sem ofensas, Mark, eu realmente aprecio sua resposta de alta qualidade!)

De qualquer forma, a discussão gerada por esta pergunta foi extremamente informativa para mim (e deve funcionar como um excelente material de referência para futuros pesquisadores). O problema original foi atenuado com êxito pelo uso de um sistema operacional de 64 bits, mas ainda não foi resolvido . Infelizmente (para mim), nunca estarei verdadeiramente satisfeito até poder identificar o problema exato; portanto, em algum momento no futuro, alguém conseguir pensar em uma solução que não foi mencionada, por favor, publique-a.

Obrigado a todos.

Nathan Taylor
fonte
Se você tivesse o Windows 7 disponível, eu adoraria ver como esse patch funciona: superuser.com/questions/67444/…
Breakthrough
Além disso, o que acontece quando você remove os dois sticks de 512mb?
Breakthrough
@ Breakthrough Tentei remover os sticks de 512 MB, mas não pareceu fazer nenhuma diferença. Eu tentei todas as combinações possíveis de emparelhamento do mesmo modelo possíveis com as 6 barras de RAM que tenho disponíveis.
Nathan Taylor
Verifique o log de eventos do sistema executando eventvwr.msc e procurando mensagens relacionadas.
Mark Allen
@ Mark Não está isolado apenas para Windows - também ocorre no Ubuntu. O log de eventos não tem nenhuma indicação de um problema de hardware.
Nathan Taylor

Respostas:

3

Como você mencionou em um comentário que o Server 2008 está relatando apenas 2 GB, algo está muito errado com sua configuração.

  1. O que o seu BIOS informa sobre a RAM instalada? Ele vê 4 GB?
  2. De acordo com o manual:
    • Remapeamento de memória deve estar ativado
    • O espelhamento de memória deve estar desativado
  3. Como seus módulos estão instalados? O manual especifica que eles devem ser instalados em pares e que os slots emparelhados são adjacentes um ao outro. De acordo com o seu post, parece que você não tem o seu ram emparelhado instalado nos slots adjacentes. Verifique a instalação física de seus módulos contra a impressão manual / placa-mãe da placa-mãe.
  4. Você já experimentou cada par de módulos de 1 GB individualmente?
    • Nesse caso, teste cada par com o Memtest86 + para garantir que cada par funcione corretamente.
    • Se cada par fizer check-out, tente alterar a ordem em que está instalado.
afrazier
fonte
O BIOS relata 4 GB, o mesmo acontece com o CPU-Z. O remapeamento de memória está ativado e o espelhamento desativado. Darei outra chance, mas, ao me lembrar, emparelhar a RAM de maneira diferente da que atualmente faz o BIOS não a reconhecer. Vou tentar o memtest nos pares individuais e ver o que acontece.
Nathan Taylor
Alguma palavra sobre como testar os pares individuais?
afrazier
Como este foi aceito? Não escolhi, o que significa que a resposta votada mais bem avaliada deve ser aceita, não?
Nathan Taylor
"A resposta mais votada criada depois que a recompensa começou com pelo menos 2 votos positivos será automaticamente aceita". (ênfase minha) Dito isso, você ainda terá um problema se o Server 2008 de 32 bits não visualizar todos os 4 GB. Se este é um servidor de produção, é algo que você realmente deve resolver.
afrazier 14/05/10
9

Considerando as evidências fornecidas acima, as duas coisas mais prováveis ​​a serem consideradas são:

  • O hardware mapeado na memória está limitando a memória disponível para um sistema operacional de 32 bits.

  • O Windows limita artificialmente a memória disponível para o sistema operacional.

Limitação de hardware

Com um sistema operacional de 32 bits, você tem 4 GB de espaço de endereço. Quaisquer periféricos com E / S mapeados na memória (portas IO, placas de rede, placas gráficas, outras placas-mãe ou placas de expansão) ocuparão uma parte (geralmente muito pequena) desse espaço de endereço. Qualquer memória usada para E / S mapeada na memória não pode ser usada para a memória principal.

Os piores porcos de E / S mapeados na memória são placas gráficas. Se você tiver duas placas gráficas, cada uma com 1 GB ou memória, 2 GB do seu espaço de endereço serão usados, deixando apenas 2 GB de memória principal, independentemente da quantidade de memória física que você instalou.

Isso não é um problema em uma máquina com sistema operacional de 64 bits, já que esses 2 GB podem ser mapeados bem longe da memória principal, mas em um sistema operacional de 32 bits, você está limitado a 4 GB no total (sem usar truques que a Microsoft desativou em seus dispositivos não sistemas operacionais de 32 bits do servidor).

Limitação artificial

A outra opção é que algum hardware ou software defina uma restrição na quantidade de memória disponível para o Windows quando ele é instalado e esse limite artificial ainda está em vigor, mesmo após a instalação de mais memória.

Eu nunca fiz isso no Vista, mas no XP você executaria o msconfig e examinaria as "Opções avançadas" na guia "BOOT.INI". Se o "/ MAXMEM" foi definido, o XP estava ignorando toda a memória acima disso.

Pesquisando na web, parece que você usa o bcdedit no Vista. Uma boa descrição de como usá-lo pode ser encontrada aqui . No entanto, como sempre, certifique-se de entender o que está fazendo antes de mexer nessas coisas.

Outras possibilidades, específicas para sistemas de servidor / estação de trabalho

Olhando através do X6DAL-XG o manual , eu me pergunto se o "espelhamento de memória e Sparing" está habilitado no BIOS:

Selecione Habilitado para habilitar o RAS de Memória (Espelhamento e Poupança) para permitir que o sistema crie uma cópia espelhada de dados gravados na memória para segurança dos dados. As opções são Desativado e Ativado.

Eu acho que, no modo de espelhamento de memória, apenas 4 bancos são usados, o que explicaria por que remover os Dimms de 512 MB não fez diferença na memória visível para o Windows.

Mark Booth
fonte
11
No momento, eu estou executando uma GeForce 7800GTX com 256mb de memória de vídeo nesse sistema, então não suspeito que ela esteja invadindo muito a memória física.
Nathan Taylor
Essa é uma ótima resposta, mas, até onde sei, nenhum desses problemas está ocorrendo com base na configuração do hardware e no fato de que o problema também se estende a outros sistemas operacionais.
Nathan Taylor
Com base na minha descoberta de que a RAM é totalmente detectada em um sistema operacional de 64 bits, acho seguro dizer que essa resposta não é relevante. Obrigado mesmo assim!
Nathan Taylor
desde que você veja toda a memória RAM do sistema operacional de 64 bits, gostaria de sugerir esta resposta é muito relevante
HorusKol
@ Mark Atualmente, tenho o Espelhamento e Poupança de Memória definido como o padrão de "Desativado".
Nathan Taylor
2

Embora não tenha resolvido o problema completamente, ele pode ajudar no diagnóstico - Você já tentou executar um CD ao vivo do Linux como o Ubuntu ? Idealmente, você deve tentar inicializar as versões de 32 e 64 bits - o de 64 bits deve ver a RAM extra sem problemas e, se houver apenas dois, você quase definitivamente tem um problema relacionado ao hardware. Se o linux de 32 bits também tiver apenas 2 GB de RAM, como indicado por Mark Booth, você provavelmente terá E / S mapeada na memória, ocupando o resto.

As placas de vídeo tendem a ser os piores criminosos ao consumir a RAM disponível; você não tem duas placas de 1 GB instaladas, não é?

Remapeamento de Memória

Muitos BIOS modernos terão a opção de remapear o espaço de memória para evitar problemas com o MMIO - embora isso funcione apenas para sistemas operacionais de 64 bits ou sistemas habilitados para PAE. Verifique seu BIOS para esta configuração.

http://support.microsoft.com/kb/929605

Goyuix
fonte
O sistema está executando um único 7800GTX (256mb), então eu não suspeito que é a fonte do problema
Nathan Taylor
@ Nathan - você tentou algum dos sabores do Linux? Observe também: não importa a quantidade de RAM instalada e visível, um único processo nunca poderá usar mais de 2 GB em um sistema operacional Windows de 32 bits. Onde você está vendo os 2 GB relatados? O BIOS? As propriedades do sistema? O que acontece se você puxar os dois sticks de 512 MB?
Goyuix
@Goyuix Fiquei com a impressão de que o Windows de 32 bits poderia endereçar até 3 GB, mesmo que alocasse apenas 2 GB aos processos. O BIOS está relatando 4 GB de RAM, enquanto o sistema operacional informa apenas 2 GB. Eu não tentei o Linux, no entanto, tentei mudar as varetas, incluindo a remoção dos DIMMs de 512mb.
21710 Nathan Taylor
@ Nathan, em teoria, o Win32 pode endereçar todos os 4 GB de memória, o problema é que a arquitetura x86 usa E / S mapeada na memória para muitos dispositivos - normalmente o maior agressor são as placas de vídeo devido ao seu grande tamanho de memória. Um cartão de 512 MB reduzirá o total máximo de RAM endereçável para 3,5 GB. Coloque duas placas de vídeo de 1 GB em um computador e o Win32 não consegue ver mais do que 2 GB de RAM total. Outros dispositivos também usam E / S mapeada na memória, embora normalmente seu intervalo de endereços tenha no máximo alguns megabytes e passe despercebido.
Goyuix
11
@ Nathan: Não é apenas a placa de vídeo. O chipset do sistema, os dispositivos complementares e integrados e a configuração do BIOS entram em cena, porque muitas coisas usam o MMIO. Além disso, os clientes Windows de 32 bits podem usar apenas endereços de memória de até 4 GiB. O Server 2003 Std de 32 bits pode endereçar até 4 GiB de RAM, independentemente dos endereços em uso. O Enterprise & DataCenter pode lidar com muito, muito mais. Todo o "limite de 32 bits do Windows 4 GiB" é uma limitação de licenciamento, nada mais. A quantidade de espaço de endereço virtual disponível para um processo individual é um problema completamente separado.
afrazier
1

Se todos os sistemas operacionais estiverem reportando 2 GB, provavelmente o problema está na placa-mãe.

Não gosto do fato de você estar usando dois cartões de memória diferentes, mesmo que estejam instalados em pares.
Eu sugeriria usar apenas um tipo de cartão de memória.

De acordo com ramshopping.com , apenas as placas KVR são recomendadas para sua placa-mãe.
Eu tentaria retirar os outros dois cartões e ver se a máquina ainda inicializa com 2 GB.
Se sim, eu substituiria os dois cartões não úteis por cartões idênticos aos que funcionam.

harrymc
fonte
11
Embora essa seja uma possibilidade, não creio que seja o problema, porque tentei 4 tipos diferentes de RAM, todos com 1gb stick e de todos eles, os 4 que instalei agora são os únicos 4 que foram totalmente detectados pelo BIOS.
Nathan Taylor
@ Nathan Taylor: Mas você usou 4 gravetos idênticos?
harrymc
Não, apenas as 4 varas que você vê acima.
Nathan Taylor
@ Nathan Taylor: Foi o que eu quis dizer - usando 4 paus do mesmo tipo.
harrymc
Ele está usando 4 Kingston- 2 KVR, 2 128mx- como já faz algum tempo .. #
Nathan Taylor Nathan
0

Não sei se isso resolverá o problema, mas não parece que você está emparelhando seus módulos de RAM corretamente. De acordo com a página de especificações, os pares devem ser posicionados um ao lado do outro, de acordo com os pares lado a lado azul e preto.

Sua configuração listada acima não parece estar seguindo isso. É possível que isso aconteça porque o sistema operacional está tentando ler os dois canais.

th3dude
fonte
0

Você deve verificar seu BIOS. Muitos têm um recurso chamado "Modo de instalação do SO" ou algum nome semelhante que limita a quantidade de RAM que seu sistema operacional pode ver. Isso foi necessário porque alguns instaladores do sistema operacional falhariam se houvesse muita memória disponível. Desativar isso deve resolver.


fonte
Olhei em volta no BIOS e também no manual, mas não vejo nenhuma opção parecida com essa.
Nathan Taylor