FreeBSD memory

https://wiki.freebsd.org/Memory

laundry

11.1-BETA を動かしていて気が付いたのだが、top から Cached の名前が消えて、Laundry になっている。
http://uyota.asablo.jp/blog/2017/06/15/8597871 2017

sysctl -n vm.stats.vm.v_cache_count
sysctl -n vm.stats.vm.v_laundry_count

munin

http://munin-monitoring.org/ticket/1288

この修正だとwiredがマイナスの値になることがあった。

diff memory.bak memory
39c39
<     echo 'graph_order active inactive wired buffers cached free swap'
---
>     echo 'graph_order active inactive wired cached free swap buffers'
51c51
<     echo 'buffers.draw STACK'
---
>     echo 'buffers.draw LINE1'

buffersをSTACKしないのが良さそう。

https://raw.githubusercontent.com/kurita0/munin-freebsd/master/memory

追記 (2021/1/27)

https://github.com/munin-monitoring/munin/commit/84c88eb2127ec049e157999637e08eb9d22f786c#diff-e3db286b7a96c98e89d76271220d2a26b37ec1843dcc0e27d6b06b6f571b5fba

に同様の修正がコミットされてる。が munin-2.0.67/plugins/node.d.freebsd/memory.in は修正されていない。

参考

What do the different memory counters in FreeBSD mean? - Unix & Linux Stack Exchange

top のソースを見ると、情報取得元は次の通り。

GETSYSCTL("vfs.bufspace", bufspace);	// Buf
GETSYSCTL("vm.stats.vm.v_active_count", memory_stats[0]);  // Act
GETSYSCTL("vm.stats.vm.v_inactive_count", memory_stats[1]); // Inact
GETSYSCTL("vm.stats.vm.v_wire_count", memory_stats[2]); // Wired
GETSYSCTL("vm.stats.vm.v_cache_count", memory_stats[3]); // Cache
GETSYSCTL("vm.stats.vm.v_free_count", memory_stats[5]); // Free

...
Buf は物理メモリに入っていないページも数えているし、Buf と Cache で共通する部分があるということ???
top のメモリ欄の見方 - メモ帳 2007

https://groups.google.com/forum/#!topic/comp.unix.bsd.freebsd.misc/aot22F6efww

Sample outputs:

SYSTEM MEMORY INFORMATION:
mem_wire:          25341952 (     24MB) [  9%] Wired: disabled for paging out
mem_active:  +     47529984 (     45MB) [ 18%] Active: recently referenced
mem_inactive:+     15605760 (     14MB) [  6%] Inactive: recently not referenced
mem_cache:   +        16384 (      0MB) [  0%] Cached: almost avail. for allocation
mem_free:    +    165556224 (    157MB) [ 65%] Free: fully available for allocation
mem_gap_vm:  +       389120 (      0MB) [  0%] Memory gap: UNKNOWN
 -------------- ------------ ----------- ------
mem_all:     =    254439424 (    242MB) [100%] Total real memory managed
mem_gap_sys: +      4988928 (      4MB)        Memory gap: Kernel?!
 -------------- ------------ -----------
mem_phys:    =    259428352 (    247MB)        Total real memory available
mem_gap_hw:  +      9007104 (      8MB)        Memory gap: Segment Mappings?!
 -------------- ------------ -----------
mem_hw:      =    268435456 (    256MB)        Total real memory installed
SYSTEM MEMORY SUMMARY:
mem_used:          87257088 (     83MB) [ 32%] Logically used memory
mem_avail:   +    181178368 (    172MB) [ 67%] Logically available memory
 -------------- ------------ ----------- ------
mem_total:   =    268435456 (    256MB) [100%] Logically total memory

http://www.cyberciti.biz/faq/freebsd-command-to-get-ram-information/