Abaixo está a saída de free no Ubuntu:
$ free
total used free shared buffers cached
Mem: 8173180 8013092 160088 0 1076276 3091136
-/+ buffers/cache: 3845680 4327500
Swap: 11719380 312 11719068
A memória física total é de 8 GB. A memória total usada é próxima disso, mas a memória total usada pelo cache do buffer é metade disso, aproximadamente 4 GB. Quase nenhuma memória está sendo usada como swap.
Agora, o cache do buffer é derivado porque tivemos leituras/gravações no disco e, após a primeira vez, os aplicativos são carregados na memória até não serem mais necessários para acelerar a leitura/gravação. Portanto, o total de leituras/gravações para buffer de disco é de 4 GB.
Ok, mas que tipo de processos estão usando os outros 4 GB de memória física (excluindo cache de buffer)? Como posso determinar isso?
Responder1
A memória restante está sendo usada para o heap e a pilha dos vários programas em execução no seu sistema. Como Joel Davis disse em seu comentário, você pode usar gnome-system-monitor
ou ps
(embora queira rss
em vez de vsize
) para ver quais programas o estão usando. Você também pode usar a top
ferramenta de linha de comando, que classifica por uso da CPU por padrão. Digite Me ele mudará para classificação por uso de memória.
Além disso, gostaria de corrigir um mal-entendido: a troca nãousarmemória. Esse 312 não significa que 312 KB de RAM sejam usados para troca. Na verdade, significa que 312 KB de swap são usados no lugar da RAM. Se a sua máquina ficar sem RAM, ela começará a gravar o conteúdo da memória no disco ("paginação") para liberar essa RAM. Esse número de troca informa quanta RAM foi gravada no disco.