使用内存区别
- rss
属于进程的数据,如 Stacks、Heaps 等。可以被进一步分解为
- 活动内存(active_anon)
- 非活动内存(inactive_anon)
必要时,非活动内存可以被交换到磁盘
- cache
缓存存储器存储当前保存在内存中的磁盘数据。可以进一步分解为
- 活动内存(active_file)
- 非活动内存(inactive_file)
必要时,首先回收非活动内存
- swap 使用量
ps命令查出来的rss/vsz/size分别是何含义呢
rss RSS resident set size, the non-swapped physical memory that a task has used (in kiloBytes). (alias rssize, rsz).vsz VSZ virtual memory size of the process in KiB (1024-byte units). Device mappings are currently excluded; this is subject
to change. (alias vsize).
size SZ approximate amount of swap space that would be required if the process were to dirty all writable pages and then be
swapped out. This number is very rough!
sz SZ size in physical pages of the core image of the process. This includes text, data, and stack space. Device mappings
are currently excluded; this is subject to change. See vsz and rss.
http://blog.csdn.net/cui55/archive/2008/06/18/2560232.aspx
http://blog.csdn.net/hyde82/archive/2006/03/29/642688.aspx
http://blog.csdn.net/hs123/archive/2007/08/30/1765101.aspx
SIZE: 进程使用的地址空间, 如果进程映射了100M的内存, 进程的地址空间将报告为100M内存. 事实上, 这个大小不是一个程序实际使用的内存数.
RSS: "Resident Set Size", 实际驻留"在内存中"的内存数. 不包括已经交换出去的代码. 举一个例子: 如果你有一个程序使用了100K内存, 操作系统交换出40K内存, 那么RSS为60K. RSS还包括了与其它进程共享的内存区域. 这些区域通常用于libc库等.
SHARE: RSS中与其它进程共享的内存部分大小.
VMSIZE: 一个进程占用的总的地址空间大小. 它包括了没有映射到内存中的页面。
sz(Private RSS): 映射到内存中的页面, 这些页面仅由进程单独使用. 这也是我们最关心地方: 进程实际占用的内存数。
from: https://www.jianshu.com/p/cc629a45f1b1