Tenho 2x2 GiB varas de RAM instaladas.
A execução memtest86
no menu de inicialização do grub confirma isso. O memtest86 não reporta erros.
No entanto, de todas as formas que verifico minha memória disponível em um sistema Ubuntu 10.04 em execução, ele relata apenas aproximadamente 3,2 GiB.
cat /proc/meminfo
== 3320132 kBSystem Monitor
== 3,2 GiBhtop
== 3242 MBfree -m
== 3242 MB
Quem tem minha memória RAM perdida ?
Informações atualizadas: Agora, iniciei o processo de inicialização dupla em outra versão do Ubuntu 10.04 no mesmo hardware (esqueci que o havia instalado há muitos meses, para emergências):) .... ... Ele relata 3,9 GiB, via System Monitor
...
Publiquei minhas /var/log/messages
informações mais recentes em http://pastebin.ubuntu.com/629246/
/var/log/messages
, mas eu postei a minha informação mais recente aqui: pastebin.ubuntu.com/629246 .. talvez alguém pode fazer cara-ou-coroa dele :)Respostas:
Um espaço de endereço de 32 bits significa que você tem espaço para 4 GB de endereços. Idealmente, o kernel gosta de poder mapear toda a memória física, toda a memória da tarefa atual e toda a sua própria memória. Se a memória física ocupar todos os 4 GB disponíveis, isso não funcionará. Portanto, a memória física é dividida em pouca memória, que é mapeada o tempo todo, e memória alta, que deve ser mapeada quando em uso. A menos que você esteja executando um kernel corrigido, na arquitetura ix86, 128 MB de espaço de endereço são dedicados ao código do kernel e às estruturas de dados, e 896 MB são dedicados ao mapeamento da memória física (para um total de 1 GB).
Leitura em segundo plano das complexidades do gerenciamento de memória quando seu espaço de endereço não é confortavelmente maior que sua memória total:
Trechos dos logs do seu kernel:
Aqui você tem 887 MB de memória baixa: o máximo teórico de 896 MB menos alguns MB de buffers DMA (zonas de memória usadas para se comunicar com dispositivos de hardware).
Da sua memória física, 3328 MB são mapeados em endereços abaixo de 4 GB e 768 MB são mapeados em endereços acima de 4 GB (o intervalo 0x100000000–0x130000000). Você não está tendo acesso a esses 768 MB, o que explica por que você só tem 3242 MB disponíveis (4096 MB de RAM menos 768 MB inacessíveis, menos 9 MB de buffers DMA, menos 75 MB usados pelo próprio kernel para código e dados). Não sei por que o BIOS mapeia alguma RAM acima da marca de 4 GB, mas como ponto de dados, estou postando isso em um PC com 4 GB de RAM que, de maneira semelhante, tem RAM mapeada em 0x100000000–0x130000000.
O mapeamento da memória física acima de 4 GB requer o uso do PAE . O PAE incorre em uma pequena sobrecarga de desempenho (em particular, requer estruturas de dados maiores no gerenciador de memória), portanto, não é ativado sistematicamente. O kernel padrão do Ubuntu é compilado sem o suporte ao PAE. Faça com que o
-generic-pae
kernel seja capaz de acessar até 64 GB de RAM.TL, DR: o Linux está funcionando conforme o esperado. O firmware não é tão útil. Obtenha um kernel habilitado para PAE.
fonte
linux-image-2.6.32-32-generic-pae
Ehtop
agora relata3990 MiB
Talvez seja porque a arquitetura do seu Ubuntu seja i386 (versão de 32 bits). Qual é o resultado quando você executa
uname -a
?fonte
uname -a
... Linux DT9400 2.6.32-32-genérico # 62-Ubuntu SMP Wed Apr 20 21:54:21 UTC 2011 i686 GNU / Linux ... No entanto, como eu mencionei em "Informações atualizadas:" em minha pergunta, outra instalação 10.04 dual-boot de 10.04 mostra 3.9 Gib .. Ambos os sistemas de inicialização dupla foram instalados a partir do mesmo CD, mas atualmente estão executando kernels diferentes e têm programas diferentes instalados ... BTW, isso não é um acontecimento recente, foi mostrando 3.2 GB para muitos meses ..