Setar quantidade X de memória ram para ser usada.

Iniciado por polargelada, 15 de Outubro de 2007, 00:30

tópico anterior - próximo tópico

polargelada

Bom dia.
Tenho o Ubuntu 7.10 instalado em meu Sempron 2.4 / 512 Mb / Fx 5200 128 Mb / Hd 80 e tenho a seguinte dúvida:

Tenho um outro pente de 512 Mb ram que está danificado a partir dos 430 e poucos megas...
Gostaria de inserir esse pente danificado em minha máquina (como pente secundário), porém limitando-o até 400 Mb (para totalizar 912 Mb ram)...

Como faço essa limitação? Li algo sobre colocar na linha de boot "mem=912m".

Coloquei isso no grub, porém essa limitação aparentemente não funcionou:

Alguma idéia de como realmente limitar a contagem/utilização de ram?

## ## End Default Options ##

title      Ubuntu 7.10, kernel 2.6.22-14-generic mem=430m
root      (hd0,3)
kernel      /boot/vmlinuz-2.6.22-14-generic root=UUID=ab753471-48e9-4e78-b4f1-1a58ea00067e ro quiet splash
initrd      /boot/initrd.img-2.6.22-14-generic
quiet

fabiovalinhos

Sinceramente não sei.

A única maneira que eu conheço de controlar o uso da ram é pelo Swappiness.
Só que ele não define, até aonde eu sei, um valor fixo de ram que vc pode usar.
Ele trabalha com prioridades entre a ram e o swap.

http://ubuntuforum-pt.org/index.php/topic,23548.msg131506.html#msg131506
Créditos dos colegas K7br e s4suk3.

7355
sudo dpkg no seu quadrado ...sudo dpkg no seu quadrado ...
http://www.youtube.com/watch?v=tHmrq0FtczM


polargelada

Com o badram você seta os endereços defeituosos no lilo (como mostra esse tutorial que vc me apontou http://www.guiadohardware.net/artigos/modulos-defeituosos/). Não é bem isso que eu procuro, procuro algo mais simples na verdade.

Nesse link contém o texto abaixo que eu creio que resolva meu problema. (http://www.tldp.org/HOWTO/BootPrompt-HOWTO-3.html#ss3.3)

Mas eu não sei onde coloco esse atributo no grub para executalo a cada inicialização!!! Se fosse no livecd, tem uma linha especial de parametros, e lá eu sei colocar! Porém com o sistema instalado não sei como passar esse parametro mem=912m


``The kernel will accept any `mem=xx' parameter you give it, and if it turns out that you lied to it, it will crash horribly sooner or later. The parameter indicates the highest addressable RAM address, so `mem=0x1000000' means you have 16MB of memory, for example. For a 96MB machine this would be `mem=0x6000000'. If you tell Linux that it has more memory than it actually does have, bad things will happen: maybe not at once, but surely eventually.''

Note that the argument does not have to be in hex, and the suffixes `k' and `M' (case insensitive) can be used to specify kilobytes and Megabytes, respectively. (A `k' will cause a 10 bit shift on your value, and a `M' will cause a 20 bit shift.) A typical example for a 128MB machine would be "mem=128m".

In some cases, the memory reported via e820 can also be wrong, and so the mem=exactmap was added. You use this in conjunction with specifying an exact memory map, such as:

s4suk3

Citação de: fabiovalinhos online 15 de Outubro de 2007, 00:50
Sinceramente não sei.

A única maneira que eu conheço de controlar o uso da ram é pelo Swappiness.
Só que ele não define, até aonde eu sei, um valor fixo de ram que vc pode usar.
Ele trabalha com prioridades entre a ram e o swap.

http://ubuntuforum-pt.org/index.php/topic,23548.msg131506.html#msg131506
Créditos dos colegas K7br e s4suk3.

7355

Nossa, nem tinha visto isso =)
Obrigado ae pelos créditos =P

Sobre o tópico, o ideal seria você usar o badram mesmo, pois ele permitiria você continuar usando o máximo de memória não defeituosa. Mas claro, esse procedimento envolve recompilar o kernel então pode ser meio trabalhoso e chato. Se precisar de qualquer ajuda com esse procedimento,. só falar comigo =)
Pentium 4 2.8ghz - 512 RAM DDR 400Mhz -  2 HDs 20gb 7200rpm IDE - Radeon 9200 PRO 128/64 - Arch Linux 2007.09 "Core Dump"
-
Humor, Linux, Software Livre e o resto :P
http://sryche.wordpress.com

boi

Citação de: polargelada online 15 de Outubro de 2007, 00:30

title      Ubuntu 7.10, kernel 2.6.22-14-generic mem=430m
root      (hd0,3)
kernel      /boot/vmlinuz-2.6.22-14-generic root=UUID=ab753471-48e9-4e78-b4f1-1a58ea00067e ro quiet splash
initrd      /boot/initrd.img-2.6.22-14-generic
quiet

Bom, vendo por aí a coisa está errada. O "mem=xxx" deveria ser colocado na linha kernel, e não na linha title.

polargelada

nossa, não tinha visto que coloquei em title...

Bom, colocando na linha certa consegui limitar a memória, como desejava!

Obrigado a todos que me ajudaram.

Fiquei com uma dúvida quanto ao uso do badram (vou usa-lo).

1) No site oficial tinha o download do patch para kernel 2.6.22. Baixei o arquivo, e ele tinha o nome de 2.6.22.1.patch. Meu kernel é o 2.6.22-14. Esse -14 pode me trazer alguma incompatibilidade com o patch?

2) Se eu usar o memtest86 SOMENTE com o pente danificado, ele vai me apontar os mesmos módulos defeituosos que me apontaria se eu estivesse utilizando um pente bom como primário e o ruim como secundário? Ou seja, trocar os pentes de ordem, slot ou número gera endereços de defeito diferentes?

Obrigado a todos@!