2 Параметры vm.memory.size
- total - общее количество доступной физической памяти.
- free - память, которая доступна для любого объекта запрашивающего память.
- active - память используемая в данный момент или совсем недавно была используема, и поэтому находящаяся еще в RAM.
- inactive - память отмеченная как неиспользуемая.
- wired - память отмеченная всегда оставаться в RAM. Она не может быть перемещена на диск.
- pinned - то же, что и 'wired'.
- anon - не связанная с файлом память (невозможно повторное чтение из неё).
- exec - исполняемый код, в основном из (программы) файла.
- file - кэш содержимого наиболее часто используемых файлов.
- buffers - кэш для таких вещей, как метаданные файловой системы.
- cached - кэш для различных вещей.
- shared - память, которая может быть доступна сразу для нескольких процессов.
- used - активная + wired память.
- pused - активная + wired память по отношению к 'total'.
- available - неактивная + кэшированная + свободная память.
- pavailable - неактивная + кэшированная + свободная память по отношению к 'total'.
Сумма из vm.memory.size[used] и
vm.memory.size[available] не обязательно равна общему количеству
памяти. Например, в FreeBSD активная, неактивная, wired, кэшируемая
памяти считаются использованными, потому-что содержат некоторую полезную
информацию.
В то же время неактивная, кэшируемая, свободная памяти считаются
доступными, потому-что такая память может быть освобождена
незамедлительно процессу, который запросил больше памяти.
Так неактивная память помечается как занятая и как свободная
одновременно. В связи с этим, элемент данных vm.memory.size[used]
предназначен исключительно в информационных целях, тогда как элемент
данных vm.memory.size[available] предназначен для использования в
триггерах.\
Обратите внимание на раздел "Смотрите также" снизу страницы для более детальной информации о вычислении памяти в различных ОС.
Заметки по платформам
- в AIX и в Solaris available и free означают одно и тоже
- в Linux shared работает только с kernel 2.4