Conforme o título.
Tive problemas curiosos em meu computador desde que comprei um novo chip de RAM, e isso me deixou pensando se a culpa era do chip de RAM.
Para testá-lo, gostaria de configurar o Ubuntu para usar apenas um chip e depois o outro. Eu não me importaria de fazer procedimentos complexos (talvez alocar manualmente toda a memória no chip não utilizado para que todos os processos residissem no outro?), Mas me importaria de tentar procedimentos perigosos
A solução mais simples pode ser abrir o computador e remover fisicamente os chips, mas eu gostaria de evitar isso se possível (por medo de causar danos/dificuldade em abrir e fechar a máquina)
Como posso dizer ao Ubuntu para não usar determinados endereços de memória?oferece uma solução parcial: dado o endereço a evitar, podemos desligá-los. Mas ainda é preciso saber quais endereços estão em qual chip
Responder1
memtest
PRIMEIRO, vá parahttps://www.memtest86.com/e baixe/execute gratuitamente memtest
para testar sua memória. Obtenha pelo menos uma aprovação completa em todos os testes 4/4 para confirmar a boa memória. Isso pode levar algumas horas para ser concluído.
Eu suspeito que isso memtest
irá falhar. Remova seu novo SODIMM/DIMM e execute novamente o memtest
. Se for aprovado, remova o SODIMM/DIMM aprovado, reinsira o outro SODIMM/DIMM sozinho e execute novamente memtest
.
badram
VerComo instalar o Ubuntu em um laptop com módulo de RAM soldado com células danificadas
Se você procurar /etc/default/grub
, encontrará um GRUB_BADRAM=
parâmetro onde poderá identificar quais locais de memória ruins existem.
# Uncomment to enable BadRAM filtering, modify to suit your needs
# This works with Linux (no patch required) and with any kernel that obtains
# the memory map information from GRUB (GNU Mach, kernel of FreeBSD ...)
#GRUB_BADRAM="0x01234567,0xfefefefe,0x89abcdef,0xefefefef"
Fonte:https://help.ubuntu.com/community/BadRAM#BADRAM_setting_in_Grub2
Configuração BADRAM no Grub2
O arquivo de configuração do GRUB2 no Natty possui uma linha para configurar exclusões de memória RAM defeituosa do kernel. Portanto, assumirei que essa é a forma preferida de mapear uma seção de memória que apresenta erros. A linha que eu estabeleci foi
GRUB_BADRAM="0x7DDF0000,0xffffc000"
A maneira sugerida em todos os sites que encontrei foi configurá-lo para ser executado memtest86
e mostrar as configurações do BadRAM. memtest86
me deu uma página com coisas que eu teria que inserir. Pude ver que todos os endereços estavam em um bloco de 16K, então eu só queria mapear esse bloco de 16K fora de ação. Aqui está como eu gerei a entrada correta.
O primeiro parâmetro é fácil. Esse é o endereço base da memória ruim. No meu caso, pude ver que todos os endereços incorretos eram maiores que 0x7DDF0000 e menores que 0x7DDF4000. Então, tomei o início do bloco de 16K como meu endereço inicial.
O segundo parâmetro é uma máscara. Você coloca 1s onde o intervalo de endereços desejado compartilha os mesmos valores e 0s onde ele irá variar. Isso significa que você precisa escolher seu intervalo de endereços de forma que apenas os bits de ordem inferior variem. Olhando meu endereço, a primeira parte da máscara é fácil. Você quer começar com 0xffff. Para a próxima mordida, explicarei com mapas de bits. Quero variar de 0000 a 0011. Portanto, a máscara para badram seria 1100 ou um hexadecimal c. Os últimos 3 nibbles precisam ser todos 0 na máscara, pois queremos todo o intervalo mapeado. Portanto, obtemos um resultado total de 0xffffc000.
Depois de definir esta linha /etc/default/grub
, executei sudo update-grub
e reiniciei e minha memória ruim não estava mais sendo usada. Nenhum patch de kernel é necessário para mapear memória ruim usando este método.
Atualização nº 1:
Se erros de memória não aparecerem na memória inferior, você pode adicionar a opção de kernel "mem=##MB" para desabilitar temporariamente a memória acima desse ponto. Ex: Segundo memtest86
, meu stick de memória apresenta erros entre 315MB e 325MB. Ao adicionar "mem=314MB" eu digo ao kernel para fingir que tenho apenas 314MB. Meu sistema estará estável o suficiente para construir o patch, momento em que posso passar um parâmetro para pular SOMENTE a seção entre 315 MB e 325 MB (isso me fornece 502 MB de memória utilizável).
ou seja: Inicialize o Ubuntu Live, no menu GRUB, pressione epara entrar no modo de edição, use as teclas de seta para encontrar "quiet splash", mude para "quiet splash mem=2048MB", CTRL+ xou F10para continuar a inicialização.