O valor "avail Mem" realmente se relaciona à memória física em vez de swap, apesar de ser exibido na linha swap? Notei que há um ponto no final da coluna "swap used".

O valor "avail Mem" realmente se relaciona à memória física em vez de swap, apesar de ser exibido na linha swap? Notei que há um ponto no final da coluna "swap used".
Sim, você está certo. Isso me confundiu por vários anos.
A exibição de estatísticas de swap do Top precisa de apenas três colunas das quatro disponíveis, enquanto sua exibição de estatísticas de memória precisa de cinco. É por isso que a estatística "avail Mem" tem a palavra "Mem" em seu rótulo. Ela esclarece que a estatística é para memória, embora esteja na linha com as estatísticas de swap. As outras estatísticas de memória estão na linha intitulada "Mem :", então elas não precisam da palavra "Mem" em seus rótulos.
Sim,
avail Mem
o item superior se refere à memória física e não inclui swap, apesar de como é (confusamente) exibido à direita das estatísticas de swap.Tecnicamente, este é o valor do
MemAvailable
kernel (disponível em/proc/meminfo
) e aproxima-se aproximadamente* da quantidade de memória livre mais os valores para buffers e cache. É uma representação da quantidade de memória que está disponível para executar processos sem precisar trocar páginas (mas possivelmente descartando páginas que estão em cache)MemAvailable
é geralmente uma métrica mais útil do queMemFree
(quetop
é exibida comofree
na$unit Mem:
seção) porque você geralmente quer que toda a sua memória faça algo em vez de ficar ociosa, e então o kernel do Linux utilizará RAM não utilizada como um cache de disco. O site https://www.linuxatemyram.com é frequentemente citado como uma explicação dessa mecânica.* leitores pedantes notarão que
avail
in top não é tão simples quantofree+buff/cach
. A documentação oficial do kernel defineMemAvailable
como: