Memória Linux cheia, o uso de memória de processo não é adicionado no topo

4

Eu tenho um computador com 16 GB de RAM. No momento, top mostra toda a RAM, ( NÃO pelo cache ), mas a RAM usada pelos vários processos está muito longe de 16GB.

Eu já vi esse problema várias vezes, mas não entendo o que está acontecendo. Alguma pista? Meu único remédio até agora foi reiniciar a máquina.

    
por Peltier 18.03.2011 / 10:33

2 respostas

7

Pelo que entendi, no Linux a memória 'usada' é dividida em 'ativa' e 'inativa'.

Memória ativa é a memória atualmente alocada para um processo e usada por ela.

Inativa é a memória que foi alocada para um processo, mas não está mais em uso por ela (foi liberada () d). O alocador coloca essa memória em um lado para uso posterior, mas não a esvazia. Se os mesmos dados que estão no bloco de memória forem solicitados novamente, ele apenas realocará esse bloco de memória no processo. Se um bloco de memória for solicitado e não houver memória 'limpa', ele começará a alocar a memória 'suja'.

Examinar / proc / meminfo pode mostrar quanto da sua memória 'usada' está ativa e quanto está inativa.

    
por 18.03.2011 / 11:46
1

Assegure-se de que algum swap esteja ativado e que o swappiness seja diferente de zero. A utilização de swap geralmente significa se há pressão real na memória, em vez de apenas buffers / cache ocupando temporariamente o que está disponível.

    
por 04.12.2011 / 12:07