1 Parameter von vm.memory.size

Übersicht

Dieser Abschnitt enthält einige Parameterdetails für den Agent-Datenpunkt vm.memory.size[<mode>].

Parameter

Die folgenden Parameter sind für diesen Datenpunkt verfügbar:

  • active - Speicher, der derzeit verwendet wird oder bis vor Kurzem verwendet wurde und sich daher im RAM befindet
  • anon - Speicher, der keiner Datei zugeordnet ist (kann nicht daraus erneut gelesen werden)
  • available - verfügbarer Speicher, je nach Plattform unterschiedlich berechnet (siehe Tabelle unten)
  • buffers - Cache für Dinge wie Dateisystem-Metadaten
  • cached - Cache für verschiedene Dinge
  • exec - ausführbarer Code, typischerweise aus einer (Programm-)Datei
  • file - Cache für Inhalte kürzlich aufgerufener Dateien
  • free - Speicher, der jeder Einheit, die Speicher anfordert, unmittelbar zur Verfügung steht
  • inactive - Speicher, der als nicht verwendet markiert ist
  • pavailable - Speicher „available“ als Prozentsatz von „total“ (berechnet als available/total*100)
  • pinned - dasselbe wie „wired“
  • pused - Speicher „used“ als Prozentsatz von „total“ (berechnet als used/total*100)
  • shared - Speicher, auf den mehrere Prozesse gleichzeitig zugreifen können
  • slab - Gesamtmenge des Speichers, die vom Kernel zum Zwischenspeichern von Datenstrukturen für den eigenen Gebrauch verwendet wird
  • total - insgesamt verfügbarer physischer Speicher
  • used - verwendeter Speicher, je nach Plattform unterschiedlich berechnet (siehe Tabelle unten)
  • wired - Speicher, der so markiert ist, dass er immer im RAM verbleibt. Er wird niemals auf die Festplatte ausgelagert.

Einige dieser Parameter sind plattformspezifisch und möglicherweise auf Ihrer Plattform nicht verfügbar. Siehe Zabbix agent items für Details.

Plattformspezifische Berechnung von available und used:

Platform "available" "used"
AIX free + cached tatsächlich verwendeter Speicher
FreeBSD inactive + cached + free active + wired + cached
HP UX free total - free
Linux<3.14 free + buffers + cached total - free
Linux 3.14+
(auch auf 3.10 unter RHEL 7 zurückportiert)
/proc/meminfo, siehe „MemAvailable“ in der Linux-Kernel-Dokumentation für Details.
Beachten Sie, dass free + buffers + cached nicht mehr gleich „available“ ist, da nicht der gesamte Page-Cache freigegeben werden kann und bei der Berechnung die Low-Watermark verwendet wird.
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

Die Summe von vm.memory.size[used] und vm.memory.size[available] entspricht nicht notwendigerweise dem Gesamtwert. Zum Beispiel unter FreeBSD:
* Active-, inactive-, wired- und cached-Speicher werden als verwendet betrachtet, da sie nützliche Informationen speichern.
* Gleichzeitig werden inactive-, cached- und free-Speicher als verfügbar betrachtet, da diese Speicherarten Prozessen, die mehr Speicher anfordern, sofort zugewiesen werden können.

Somit ist inactive-Speicher gleichzeitig verwendet und verfügbar. Aus diesem Grund ist der Datenpunkt vm.memory.size[used] nur zu Informationszwecken vorgesehen, während vm.memory.size[available] zur Verwendung in Auslösern vorgesehen ist.

Siehe auch

  1. Zusätzliche Details zur Speicherberechnung in verschiedenen Betriebssystemen