[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Limitando uso de memória RAM



Flavio Alves Granato escreveu:
Marcos Lazarini escreveu:
Em 07/05/07, Flavio Alves Granato<fgranato@unilestemg.br> escreveu:
Teria uma forma de saber a quantidade usada e limitar o uso de memória
RAM pelo Kernel?
Qual a finalidade?
A princípio o kernel só usa o que realmente precisa.
Vc sabe que está com pouca memória quando começa a usar swap. Senão
acontece isso, não se preocupe.
a questão é estipular o quanto de memória cada processo do sistema esta
alocando para si. Se isso for possível claro.
Pois tenho um SO linux e uma aplicação ( oracle 9i ) rodando nele e
outro dia reclamaram que mesmo finalizando a aplicação o consumo de RAM
ficava grande e eu disse que era por que o sistema não iria gastar tempo
de cpu limpando aquilo e que quando precisasse novamente ele iria
simplismente sobrescrever o que precisasse.
Grato pela ajuda.

Olá,

Com "ps aux" você pode ver quanto de memória cada processo corrente usa. Você verá uma "fotografia" dos processos na seguinte linha:

USER       PID %CPU %MEM   VSZ  RSS TTY      STAT START   TIME COMMAND

USER = usuário que iniciou o processo
PID = número de identificação do processo
%CPU = porcentagem de processamento usado
%MEM = porcentagem de memória física usada
VSZ = memória total requerida pelo processo (virtual)
RSS = quantidade de memória virtual realmente alocada (real)
TTY = a qual terminal está ligado o processo (entrada e saída padrão)
STAT = situação do processo
START = data/hora em que foi iniciado
TIME = tempo total em execução desde quando foi iniciado
COMMAND = comando que iniciou o processo

Quanto ao uso total de memória, o comando "free", "top" e "cat /proc/meminfo" vai te dar mais informações. Veja que a memória é usada para fazer cache, isto é, o sistema tenta segurar em memória, que é coisa de dezenas de vezes mais rápido que o HD, que pode ser constatado com "hdparm -t /dev/hda" e "hdparm -T /dev/hda", sendo o primeiro comando o tempo de leitura do HD e o segundo o tempo de leitura do cache, porém repare que o tempo de procura para iniciar a transferência é de microsegundos (ou até nanosegundos) no cache, porém no HD leva alguns milisegundos. Portanto, se tem memória livre, por que não usá-la para cache e desalocar este cache conforme for necessário mais memória real requerida pelos processos em execução? É assim que o Linux (e creio que todos os outros SO) trabalham, corrijam-me se eu estiver errado.

--
Atenciosamente,

          Junior Polegato

          Um peregrino de problemas; Um pergaminho de soluções!
          Página Profissional: http://www.juniorpolegato.com.br



Reply to: