fedora core livre -m vs monitor do sistema

0

Por que eu recebo números diferentes ao executar free -m vs monitor do sistema? Eu tenho rodado o firefox com flash por alguns dias e minha máquina ficou lenta; demorou todos 1GB da minha memória, então eu exclui o firefox e npviewer.bin e memória do sistema agora diz que estou em 192Mb de ram onde como free -m disse 647Mb?

Qualquer pensamento, eu acho que o monitor do sistema está certo.

    
por David 30.10.2010 / 02:54

1 resposta

0

Em qualquer sistema operacional remotamente sofisticado, não há uma noção clara de quanto de memória um aplicativo específico usa ou quanta memória é gratuita. As principais fontes de complicações são:

  • Se você tiver swap, você inclui espaço de troca livre na memória livre? Se você não fizer isso, qual o objetivo de trocar? Mas se o fizer, é provável que você sempre tenha muita memória livre, mesmo que o seu sistema esteja se debatendo (ou seja, trocando muito) devido à falta de memória RAM.
  • Existem muitos usos para a memória. Os dois principais são memória alocada por aplicativos e memória dedicada a caches de disco. Esses dois geralmente têm a mesma ordem de grandeza em um sistema sem recursos. Se você contar apenas a memória que não é usada para qualquer finalidade, é normal ter muito pouco: os caches de disco não irão embora até que haja necessidade de memória. Mas se você incluir os caches de disco na memória livre, você pode pensar que pode preencher tudo com a memória do aplicativo, mas então irá se debater devido à falta de cache de disco.
  • A memória compartilhada dificulta a contagem da parte da memória alocada para um aplicativo específico. A memória compartilhada inclui coisas como bibliotecas compartilhadas e caches de disco para arquivos que mais de um aplicativo abriu.

Assim, ambos os números que você reporta provavelmente estão corretos, apenas contando diferentes noções de "memória livre". (E free informa vários números; você não disse qual deles é 647MB - na linha -/+ buffers/cache , os caches de disco contam como memória livre, enquanto na linha Mem eles não.)

    
por 30.10.2010 / 13:35

Tags