1 parâmetros vm.memory.size
Visão geral
Esta seção fornece alguns detalhes dos parâmetros para o item do agent vm.memory.size[<mode>].
Parâmetros
Os seguintes parâmetros estão disponíveis para este item:
- active - memória atualmente em uso ou usada recentemente, portanto está na RAM
- anon - memória não associada a um arquivo (não pode ser recarregada a partir dele)
- available - memória disponível, calculada de forma diferente dependendo da plataforma (veja a tabela abaixo)
- buffers - cache para coisas como metadados do sistema de arquivos
- cached - cache para várias coisas
- exec - código executável, normalmente de um arquivo (programa)
- file - cache para conteúdos de arquivos acessados recentemente
- free - memória que está prontamente disponível para qualquer entidade que solicitar memória
- inactive - memória marcada como não utilizada
- pavailable - memória 'disponível' como porcentagem do 'total' (calculada como
available/total*100) - pinned - igual a 'wired'
- pused - memória 'usada' como porcentagem do 'total' (calculada como
used/total*100) - shared - memória que pode ser acessada simultaneamente por vários processos
- slab - quantidade total de memória usada pelo kernel para armazenar estruturas de dados para seu próprio uso
- total - memória física total disponível
- used - memória usada, calculada de forma diferente dependendo da plataforma (veja a tabela abaixo)
- wired - memória marcada para sempre permanecer na RAM. Nunca é movida para o disco.
Alguns desses parâmetros são específicos de plataforma e podem não estar disponíveis na sua plataforma. Veja itens do agent Zabbix para detalhes.
Cálculo específico de plataforma de available e used:
| Plataforma | "available" | "used" |
|---|---|---|
| AIX | free + cached | memória real em uso |
| FreeBSD | inactive + cached + free | active + wired + cached |
| HP UX | free | total - free |
| Linux<3.14 | free + buffers + cached | total - free |
| Linux 3.14+ (também retroportado para 3.10 no RHEL 7) |
/proc/meminfo, veja "MemAvailable" na documentação do kernel Linux para detalhes. Observe que free + buffers + cached não é mais igual a 'available' devido ao fato de que nem todo o cache de página pode ser liberado e o low watermark ser usado no cálculo. |
total - free |
| NetBSD | inactive + execpages + file + free | total - free |
| OpenBSD | inactive + free + cached | active + wired |
| OSX | inactive + free | active + wired |
| Solaris | free | total - free |
| Win32 | free | total - free |
A soma de vm.memory.size[used] e vm.memory.size[available] não é necessariamente igual ao total. Por exemplo, no FreeBSD:
* Memórias ativas, inativas, wired e cached são consideradas usadas, porque armazenam alguma informação útil.
* Ao mesmo tempo, memórias inativas, cached e free são consideradas disponíveis, porque esses tipos de memória podem ser instantaneamente fornecidos a processos que solicitam mais memória.
Portanto, a memória inativa é simultaneamente usada e disponível. Por causa disso, o item vm.memory.size[used] é projetado apenas para fins informativos, enquanto vm.memory.size[available] é projetado para ser usado em triggers.