内存命令梳理

cat /proc/pid/status

其中VmRSS(Resident set size,实际使用物理内存大小)

RSS = 堆 + 栈 + 加载的共享库 + 加载的代码

在nodejs中 process.memoryUsage() 的rss,也可以获得这个数字

pmap

用法1:pmap -d pid

最后一行的值

  • mapped:表示该进程映射的虚拟地址空间大小,也就是该进程预先分配的虚拟内存大小,即ps出的vsz
  • writeable/private:表示进程所占用的私有地址空间大小,也就是该进程实际使用的内存大小
  • shared:表示进程和其他进程共享的内存大小

** 界面说明 **

  • Address: 内存开始地址
  • Kbytes: 占用内存的字节数(KB)
  • RSS: 保留内存的字节数(KB)
  • Dirty: 脏页的字节数(包括共享和私有的)(KB)
  • Mode: 内存的权限:read、write、execute、shared、private (写时复制)
  • Mapping: 占用内存的文件、或[anon](分配的内存)、或[stack](堆栈)
    • anon: 堆内存
    • stack:栈
  • Offset: 文件偏移
  • Device: 设备名 (major:minor)

free

Centos7 计算方法

直接看:available

定时查看内存

while : ;do free -m;sleep 2; done;

你可能感兴趣的:(内存命令梳理)