このセクションでは、vm.memory.size[<mode>] エージェントアイテムのパラメータの詳細について説明します。
このアイテムには以下のパラメータがあります:
available/total*100で計算)used/total*100で計算)これらのパラメータの一部はプラットフォーム固有であり、お使いのプラットフォームでは利用できない場合があります。詳細はZabbixエージェントアイテムを参照してください。
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+ (RHEL 7の3.10にもバックポート済み) |
/proc/meminfo、詳細はLinuxカーネルドキュメントの"MemAvailable"を参照。 free + buffers + cachedは、すべてのページキャッシュが解放できるわけではなく、計算にlow watermarkが使われるため、もはや'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メモリは有用な情報を保持しているため、使用中と見なされます。
* 同時にinactive、cached、freeメモリは、より多くのメモリを要求するプロセスに即座に割り当てることができるため、利用可能と見なされます。
したがって、inactiveメモリは同時に使用中かつ利用可能となります。このため、vm.memory.size[used]アイテムは情報提供のみを目的として設計されており、vm.memory.size[available]はトリガーで使用することを目的としています。