一,内存统计:
1, VSS 大小 = 程序分配的内存(malloc并使用的+malloc而未使用的)+ 共享库所占有的内存
2,RSS 大小 = 程序正在使用的内存(不包含swap区的) + 共享库所占用的内存;
3,PSS 大小 = 程序正在使用的内存 + 共享库所占用的内存/共享库被共用的进程数;
4,USS 大小 = 程序正在使用的内存
二,swap相关:
cat /proc/sys/vm/swappiness
10
表示内存剩余10%时,开始使用swap分区
三,free命令相关:
# free -m
total used free shared buff/cache available
Mem: 31611 1419 10030 1001 20161 28551
Swap: 8191 648 7543
- total:是指总数;
- used:是指已经使用的;
- free:是指空闲的;
- shared:是指共享的;
- buffers:是指缓冲内存数;
- cached:是指缓存内存数,单位是KB;
cached 是给读取数据时加速的,buffers 是给写入数据加速的。
cached 是指把读取出来的数据保存在内存中,当再次读取时,不用读取硬盘而直接从内存中读取,加速了数据的读取过程;
buffers 是指在写入数据时,先把分散的写入操作保存到内存中,当达到一定程度后再集中写入硬盘,减少了磁盘碎片和硬盘的反复寻道,加速了数据的写入过程。