2 Параметры vm.memory.size

Обзор

В этом разделе представлена более подробная информация, а также специфичная информация по разным платформам, по параметрам vm.memory.size[<режим>] элемента данных агента.

Параметры

В этом элементе данных разрешены следующие параметры:

  • active - память, используемая в данный момент или была совсем недавно в использовании, и поэтому ещё находится в RAM.
  • anon - память, не связанная с файлами (повторное чтение из них невозможно).
  • available - доступная память, вычисляется в зависимости от платформы (смотрите таблицу ниже).
  • buffers - кэш для таких вещей, как метаданные файловой системы.
  • cached - кэш для различных вещей.
  • exec - исполняемый код, в основном из (программ) файлов.
  • file - кэш содержимого наиболее часто используемых файлов.
  • free - память, которая доступна без каких-либо проблем любому объекту, запрашивающему память.
  • inactive - память, помеченная, как неиспользуемая.
  • pavailable - inactive + cached + free память по отношению к 'total'.
  • pinned - то же, что и 'wired'.
  • pused - active + wired память по отношению к 'total'.
  • shared - память, которая может быть доступна сразу нескольким процессам.
  • total - общий объем доступной физической памяти.
  • used - используемая память, вычисляется в зависимости от платформы (смотри таблицу ниже).
  • wired - память, помеченная всегда оставаться в RAM. Она не может быть перемещена на диск.

Вычисления available и used в зависимости от платформы:

Платформа "available" "used"
AIX free + cached реальное использование памяти
FreeBSD inactive + cached + free active + wired + cached
HP UX free total - free
Linux<3.14 free + buffers + cached total - free
Linux 3.14+ /proc/meminfo, "MemAvailable" (включая "Cached") 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

Сумма vm.memory.size[used] и vm.memory.size[available] не обязательно равна общему количеству памяти. Например, в FreeBSD:
* Активная, неактивная, wired, кэшируемая памяти считаются использованными, так как содержат некоторую полезную информацию.
* В то же время неактивная, кэшируемая, свободная памяти считаются доступными, так как такая память может быть незамедлительно освобождена процессу, который запросил больше памяти.

Так неактивная память помечается как занятая, так и как свободная, одновременно. В связи с этим, элемент данных vm.memory.size[used] предназначен исключительно в информационных целях, тогда как элемент данных vm.memory.size[available] предназначен для использования в триггерах.

Обратите внимание на раздел "Смотрите также" внизу страницы для получения более детальной информации о вычислении памяти на разных ОС.

Заметки зависимости от платформы
  • на Linux shared работает только с kernel 2.4

Смотрите также

  1. Подробная информация о вычислении памяти на разных ОС [en]