Ta sekcja zawiera szczegółowe informacje na temat parametrów pozycji agenta vm.memory.size[<mode>].
Dla tego elementu dostępne są następujące parametry:
available
/total
*100)used
/total
*100)Niektóre z tych parametrów są specyficzne dla platformy i mogą nie być dostępne na twojej platformie. Szczegółowe informacje znajdziesz w sekcji Pozycje wspierane przez platformę.
Obliczenia available i used dla specyficznej platformy::
Platforma | "available" | "used" |
---|---|---|
AIX | free + cached | rzeczywista pamięć używana |
FreeBSD | inactive + cached + free | active + wired + cached |
HP UX | free | total - free |
Linux<3.14 | free + buffers + cached | total - free |
Linux 3.14+ (także wstecznie przeniesione do 3.10 w RHEL 7) |
/proc/meminfo, patrz "MemAvailable" w dokumentacji jądra Linuxa po więcej szczegółów. Zauważ, że free + buffers + cached nie jest już równe 'available' z powodu braku możliwości zwolnienia całego bufora stronic, a do obliczeń używany jest 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 |
Suma vm.memory.size[used] i vm.memory.size[available] nie musi być równa total. Na przykład na FreeBSD:
* Pamięć Active, inactive, wired, cached są uważane za used, ponieważ przechowują niektóre użyteczne informacje.
* Jednocześnie pamięć inactive, cached, free są uważane za available, ponieważ tego rodzaju pamięć może być natychmiastowo udostępniana procesom żądającym więcej pamięci.
Dlatego też pamięć inactive jest jednocześnie uznawana za used i available. Z tego powodu pozycja vm.memory.size[used] jest przeznaczona tylko do celów informacyjnych, podczas gdy vm.memory.size[available] jest przeznaczona do użycia w wyzwalaczach.