Pessoal , a unica forma de liberar a memoria ram do linux é matando os processos mais pesados que não sejam do sistema. Vou fazer isso em java ?
Versão Imprimível
Pessoal , a unica forma de liberar a memoria ram do linux é matando os processos mais pesados que não sejam do sistema. Vou fazer isso em java ?
sim. deixaremos vc fazer isso em java.
char Homer[]="duh!";
(ps: mate tb a JVM quando subir! Eh um grande e inutil processo....)
Não entendi direito a pergunta... bom, matar processos você pode, mas não mate por exemplo o JVM ( Java Virtual Machine ), ele é quem interpreta a sua aplicação Java enquanto está em execução, ok? :)Citação:
Postado originalmente por Anonymous
Uma sugestão para resolver esse problema de falta de RAM é colocar mais RAM... ou se preferir colocar mais memória SWAP. O desempenho será bem menor (se você usar mais memória SWAP ao invés de colocar mais memória RAM), mas pode vir a funcionar se o objetivo é estudar.
Aí eh que tá... uma coisa que eu nao entendo eh essa forma do Linux em gerenciar a memoria...
Meu pc tinha 128Mb de ram, eu tava usando o Icewm.. quando carregava tudo, dava 84mb usados e ficava o resto livre... acontece que quando eu usava os aplicativos ia enchendo, enchendo ate que usava a swap...
Botei mais memoria e enche, enche e usa aswap... depois que encerro o aplicativo nunca a quantidade de memoria volta ao tamanho original... deixa sempre carregado...
Nao tem um gerenciador de memoria tipo o Rambooster para windows pra linux não...
O Windows gerencia isso legalzinho.
Fala ai!
a forma de gerenciamento é bem direfente mesmo.
Nao tenho certeza do vou dizer (inclusive, gostaria muito de ter certeza sobre isso), mas me parece q o linux nao livra a memoria do processo pelo motivo de vc voltar a chama-lo. E se o aplicativo nao eh mais chamado, este eh mais candidato de ir para o swap. Processos q são repetitivos (imagine um webserver ou o processo do Qmail, q vive fazendo fork (a tal mail-queue)), o restart do aplicativo é mais rapido.
Bem... li isso a um bom tempo atras (quando o mundo estava mudando do 2.2 para o 2.4). Nao sei se é realmente isso, mas se for, acho uma boa ideia.
O melhor que vc pode fazer é configurar melhor o sistema: se é um desktop, acho dificil mudar (uma vez q o usuario clica onde bem ele quer... um dia eh o xmms, outro eh o mozila e por ai vai: nao eh planejado), se for um servidor, mergulhe no processo de init e desative tudo o que for desnecessario e depois de prioridades nos processos de interesse.
Fazer um processo para livrar memoria em java é o mesmo que usar uma ferrari para andar devagar: Vc vai tar leventando uma coisa pesada pra justamente livrar memoria. Talvez seria melhor implementar isso em Shell... mesmo assim... matar processos no (quase) escuro eh meio complicado. Em vez de matar, pq (esta certo em) levanta-los?