Por que o Windows 7 x64 não pode usar toda a memória instalada?

7

Estou executando o Windows 7 x64 RTM em um Dell Latitude D520 com memória de 4GB. Os relatórios do painel de controle do sistema:

System type: 64-bit Operating System
Installed memory: 4.00 GB (3.24 usable)

Por que toda a memória não é utilizável? Como estou rodando 64 bits, isso é uma limitação da Dell?

Editar:

Isso me deu mais perguntas:

  1. Se o sistema reportar que posso usar 3.24GB, isso significa que 760MB estão sendo usados pela placa de vídeo? Isso parece muito, e as especificações sobre esta página estado que vai usar até 128MB)
  2. Se 760MB não está sendo usado por vídeo, está sendo desperdiçado?
  3. A execução de janelas de 64 bits ajuda-me? Caso contrário, existem outras vantagens para as janelas de 64 bits?
por Michael Haren 09.08.2009 / 19:48

5 respostas

5

Ou você faz o que a Postagem 1 sugere, ou sua placa-mãe simplesmente não suporta o mapeamento de endereços de memória, o que significa: Não há 4GB para você com este hardware.

    
por 09.08.2009 / 23:45
8

Existem 2 razões prováveis para isso.

  • Você precisa ativar Memory Remapping no seu BIOS
  • Sua placa de vídeo pode estar compartilhando a memória interna.

Geralmente, é o último caso. Este foi um dos recursos planejados do Windows 7, você pode ler sobre ele aqui .

    
por 09.08.2009 / 19:50
0

Pode ser uma limitação do Windows também. No entanto, geralmente não há versões de pré-lançamento do IIRC.

    
por 09.08.2009 / 19:56
0

Eu tenho um D520 e vejo a mesma quantidade de perda. Estou executando o Linux com um kernel que tem PAE ativado. Eu sempre presumi que a falta de memória estava sendo usada para o chipset de vídeo onboard.

    
por 09.08.2009 / 22:18
0

É uma limitação do seu chipset / placa de vídeo / driver de dispositivo. O Windows (ou, em alguns casos, o BIOS) mapeia a memória para a placa de vídeo, porque ela não possui sua própria memória. O Windows não pode usá-lo apenas quando quiser, seria uma violação de princípios sólidos. A Microsoft pensou em mapear e remapear a memória acima da linha de 4GB baseada no uso. O problema foi pensado que isso causaria enorme instabilidade em sistemas de consumo. Observe que o Windows Server NÃO sofre com o limite de 4 GB, mesmo em máquinas x86 ...

link

O motivo foi, novamente, os drivers de dispositivo. O mercado de servidores tende a ter um mercado menor de drivers de dispositivos e desenvolvedores de DD, portanto, era possível testar e suportar espaços de endereços maiores. Do lado do consumidor, isso é um pesadelo. Tecnicamente, o XP SP2 e sistemas operacionais x86 podem usar endereços de memória acima de 4 GB. Nem todos os drivers de dispositivo suportavam isso, já que ultrapassar 4 GB significava que seus ponteiros são mais longos. Assim DDs, muitas vezes, cuspir um erro e, assim, causar tela azul ou nem sequer inicializar.

Outra consequência do remapeamento da memória de vídeo é que a placa de vídeo é sensível à latência . Remapear a memória de volta ao cartão envolve o seguinte:

  1. Movendo o que estava lá para o arquivo de paginação. . . (centrifugação)
  2. Escrevendo no banco de dados do mapa de memória do SO, no qual você coloca o arquivo
  3. Se precisar de memória contagiante. . . repita 1 e 2
  4. A placa de vídeo precisa aguardar a alocação da memória. (gire os polegares)
  5. Carregando texturas para a placa de vídeo. (centrifugação)
  6. Escrevendo no banco de dados do mapa de memória onde você coloca as texturas
  7. Em seguida, pesquise constantemente a placa gráfica, "Você já terminou? Já acabou? Sim! Yeah! Porque o menino Johnny na barra de tarefas REALMENTE MALDAMENTE precisa ficar ruim !!"
  8. A placa gráfica decide, com base em algum algoritmo, o que deve e não deve manter.
  9. Em seguida, informe ao SO qual parte da memória ele não está usando.
  10. Tudo isso a tempo de te dar 60 quadros por segundo (bem, não tecnicamente, mas você vê o ponto)

Isso também afetará todos os outros drivers que o SO gerencia sensíveis à latência, ou seja, driver de áudio (ignorar) e drivers de rede (Ei, como esse cara teletransportar pela porta!?)

Como você pode resolver isso? Promovendo uma maior qualidade de desenvolvedores de drivers de dispositivos. Eles são altamente subestimados e desvalorizados. As idéias incluem o envio de pacotes de atendimento aos desenvolvedores DD locais, kits de Lego Robótica, monitores grandes e, é claro, mulheres.

    
por 01.07.2011 / 03:04