2 个 vm.memory.size 参数

概述

本节提供有关 vm.memory.size[<模式>] agent 监控项 的部分参数详细信息。

参数

该监控项支持以下参数:

  • active - 当前正在使用或最近使用的内存(驻留在RAM中)
  • anon - 与文件无关的内存(无法从文件重新读取)
  • available - 可用内存,计算方式因平台而异(见下表)
  • buffers - 文件系统元数据等缓存
  • cached - 各类缓存
  • exec - 可执行代码(通常来自程序文件)
  • file - 最近访问文件内容的缓存
  • free - 可立即分配给任何请求内存的实体
  • inactive - 标记为未使用的内存
  • pavailable - 'available'内存占'total'的百分比(计算公式:available/total*100)
  • pinned - 同'wired'
  • pused - 'used'内存占'total'的百分比(计算公式:used/total*100)
  • shared - 可被多个进程同时访问的内存
  • slab - 内核用于缓存自身数据结构的全部内存
  • total - 可用物理内存总量
  • used - 已用内存,计算方式因平台而异(见下表)
  • wired - 标记为常驻RAM的内存(永不交换到磁盘)

部分参数为平台专用,可能在某些平台上不可用。详见Items supported by platform

各平台availableused的计算方式:

平台 "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+
(also backported to 3.10 on RHEL 7)
详见Linux内核documentation中的"MemAvailable"
注意:由于并非所有页缓存都可释放且计算使用低水位线,free + buffers + cached不再等于'available'
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]之和不一定等于total。例如在FreeBSD上:
* Active/inactive/wired/cached内存被视为used(存储有效信息)
* 同时inactive/cached/free内存被视为available(可立即分配给进程)

因此inactive内存同时属于used和available。故vm.memory.size[used] 监控项仅用于信息展示,而vm.memory.size[available]设计用于触发器。

另请参阅

1。 不同操作系统中内存计算的附加详情