Sidebar

2 parâmetros vm.memory.size

  • total - memória física total.
  • free - memória disponível para ser requisitada por qualquer entidade.
  • active - memória atualmente em uso, ou utilizada recentemente, e por isso ainda está na RAM.
  • inactive - memória marcada como não utilizada.
  • wired - memória marcada para se manter em RAM. Nunca será movida para disco.
  • pinned - o mesmo que 'wired'.
  • anon - memória não associada a um arquivo (não pode ser recarregada a partir de um).
  • exec - código executável, normalmente a partir de um arquivo de programa.
  • file - cache contendo os arquivos acessados recentemente.
  • buffers - cache para coisas como o metadado de sistema.
  • cached - cache para coisas diversas.
  • shared - memória que pode ser acessada simultaneamente por múltiplos processos.
  • used - memória 'active' + 'wired'.
  • pused - percentual de memória 'active' + 'wired' em relação à 'total'.
  • available - memória 'inactive' + 'cached' + 'free'.
  • pavailable - 'inactive' + 'cached' + 'free' em relação à 'total'.

O total de vm.memory.size[used] e vm.memory.size[available] não necessariamente será igual ao total. Por exemplo, em FreeBSD: memória 'active, inactive, wired, cached' são consideradas como utilizadas, pois elas podem armazenar informações úteis.
Da mesma forma as memórias 'inactive, cached, free' podem ser consideradas como disponíveis, pois estes tipos de memórias podem ser atribuídas imediatamente a processos que requeiram mais memória.
Então a memória inativa é considerada como utilizada e como disponível ao mesmo tempo. Por causa disso o item vm.memory.size[used] é desenvolvido para propósitos informacionais apenas, enquanto o item vm.memory.size[available] foi desenvolvido para ser utilizado em triggers.

Consulte a seção "Veja também" ao final desta página para mais detalhes sobre o cálculo de memória em diferentes SOs.

Visão geral

Esta seção fornece alguns detalhes de parâmetros para o vm.memory.size[<mode>] item do agente.

Parâmetros

Os seguintes parâmetros estão disponíveis para este item:

  • ativo - memória atualmente em uso ou usada muito recentemente, e assim esta na memoria
  • anon - memória não associada a um arquivo (não pode ser relido de isto)
  • disponível - memória disponível, calculada de forma diferente dependendo na plataforma (veja a tabela abaixo)
  • buffers - cache para itens como metadados do sistema de arquivos
  • cache - cache para várias coisas
  • exec - código executável, normalmente de um arquivo (programa)
  • arquivo - cache para conteúdo de arquivos acessados recentemente
  • grátis - memória que está prontamente disponível para qualquer entidade solicitante memória
  • inativo - memória marcada como não usada
  • pavailable - memória 'disponível' como porcentagem do 'total' (calculado como disponível/total*100)
  • fixado - igual a 'com fio'
  • pused - memória 'usada' como porcentagem do 'total' (calculada como usado/total*100)
  • compartilhada - memória que pode ser acessada simultaneamente por vários processos
  • slab - quantidade total de memória usada pelo kernel para armazenar dados em cache estruturas para uso próprio
  • total - memória física total disponível
  • usado - memória usada, calculada de forma diferente dependendo do plataforma (veja a tabela abaixo)
  • com fio - memória marcada para ficar sempre na RAM. Nunca é movido para o disco.

Alguns desses parâmetros são específicos da plataforma e pode não estar disponível em sua plataforma. Consulte Itens suportados por plataforma para detalhes.

Cálculo específico da plataforma de disponível e usado:

Plataforma "disponível" "usado"
AIX livre + em cache memória real em uso
FreeBSD inativo + em cache + livre ativo + com fio + em cache
HP UX grátis total - grátis
Linux<3.14 livre + buffers + cache total - livre
Linux 3.14+
(também retroportado para 3.10 no RHEL 7)
/proc/meminfo, veja "MemAvailable" no kernel Linux documentação para detalhes.
Observe que livre + buffers + cache não é mais igual a 'disponível' porque nem todo o cache da página pode ser liberado e marca d'água baixa sendo usada no cálculo.
total - livre
NetBSD inativo + execpages + arquivo + livre total - livre
OpenBSD inativo + livre + em cache ativo + com fio
OSX inativo + livre ativo + com fio
Solaris grátis total - grátis
Win32 grátis total - grátis

::: não importante A soma de vm.memory.size[used] e vm.memory.size[available] não é necessariamente igual ao total. Para instância, no FreeBSD:
* Memórias ativas, inativas, com fio e em cache são consideradas usadas, porque eles armazenam algumas informações úteis.
* Ao mesmo tempo, memórias inativas, armazenadas em cache e livres são consideradas disponíveis, porque esses tipos de memórias podem ser dados instantaneamente processos que solicitam mais memória.

Assim, a memória inativa é usada e disponível simultaneamente. Por causa de isso, o item vm.memory.size[used] é projetado para fins informativos apenas para fins, enquanto vm.memory.size[available] foi projetado para ser usado em gatilhos. :::

Veja também

  1. Detalhes adicionais sobre cálculo de memória em diferentes SO