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.