1 parametri vm.memory.size

Panoramica

Questa sezione fornisce alcuni dettagli sui parametri per l'item agent vm.memory.size[<mode>].

Parametri

Per questo item sono disponibili i seguenti parametri:

  • active - memoria attualmente in uso o usata molto di recente e quindi presente in RAM
  • anon - memoria non associata a un file (non può essere riletta da esso)
  • available - memoria disponibile, calcolata in modo diverso a seconda della piattaforma (vedere la tabella sotto)
  • buffers - cache per elementi come i metadati del file system
  • cached - cache per vari elementi
  • exec - codice eseguibile, tipicamente proveniente da un file (di programma)
  • file - cache per il contenuto di file a cui si è avuto accesso di recente
  • free - memoria immediatamente disponibile a qualsiasi entità che ne faccia richiesta
  • inactive - memoria contrassegnata come non utilizzata
  • pavailable - memoria 'available' come percentuale di 'total' (calcolata come available/total*100)
  • pinned - uguale a 'wired'
  • pused - memoria 'used' come percentuale di 'total' (calcolata come used/total*100)
  • shared - memoria a cui possono accedere simultaneamente più processi
  • slab - quantità totale di memoria usata dal kernel per memorizzare nella cache strutture dati per uso interno
  • total - memoria fisica totale disponibile
  • used - memoria utilizzata, calcolata in modo diverso a seconda della piattaforma (vedere la tabella sotto)
  • wired - memoria contrassegnata per rimanere sempre in RAM. Non viene mai spostata su disco.

Alcuni di questi parametri sono specifici della piattaforma e potrebbero non essere disponibili sulla propria piattaforma. Vedere Zabbix agent items per i dettagli.

Calcolo specifico per piattaforma di available e used:

Platform "available" "used"
AIX free + cached memoria reale in uso
FreeBSD inactive + cached + free active + wired + cached
HP UX free total - free
Linux<3.14 free + buffers + cached total - free
Linux 3.14+
(retroportato anche a 3.10 su RHEL 7)
/proc/meminfo, vedere "MemAvailable" nella documentazione del kernel Linux per i dettagli.
Si noti che free + buffers + cached non è più uguale ad 'available' perché non tutta la page cache può essere liberata e nel calcolo viene usata la low watermark.
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

La somma di vm.memory.size[used] e vm.memory.size[available] non è necessariamente uguale al totale. Ad esempio, su FreeBSD:
* Le memorie active, inactive, wired e cached sono considerate usate, perché memorizzano informazioni utili.
* Allo stesso tempo, le memorie inactive, cached e free sono considerate disponibili, perché questi tipi di memoria possono essere assegnati immediatamente ai processi che richiedono più memoria.

Quindi la memoria inactive è contemporaneamente sia usata sia disponibile. Per questo motivo, l'item vm.memory.size[used] è progettato solo a scopo informativo, mentre vm.memory.size[available] è progettato per essere usato nei trigger.

Guarda anche

  1. Ulteriori dettagli sul calcolo della memoria in diversi OS