RSS是“驻留内存集”(Resident Set Size ),表示进程分配的内存大小。
RSS不包含进入交换分区的内存。
只要共享库位于内存中,RSS就包含共享库占用的内存
RSS包含所有分配的堆栈内存和堆内存。
VSZ表示进程分配的虚拟内存。
VSZ包含进程有权访问的所有内存,包括访问交换分区的内容和共享库占用的内存。
对于进程,程序大小为500K,链接的共享库大小为2500K,堆栈内存为200K,其中100K位于交换分区中。
进程实际上加载了共享库中的1000K内容和自己程序中的400K内容。 RSS和VSZ是多少?
RSS: 400K 1000K 100K=1500K
VSZ: 500K 2500K 200K=3200K
虽然RSS的一部分来自共享库,但共享库可能用于许多进程,因此所有进程的RSS合计可能大于系统内存。
有新的参数比例设置(PSS )。 共享内存的计算与RSS不同。 参考前面的示例,如果两个进程使用同一共享库:
PSS:400k(1000k/2 ) 100K=400K 500K 100K=1000K
因为线程共享相同的地址空间,所以一个进程中的所有线程都具有相同的RSS、VSZ和PSS。 可以使用ps或top命令观察这些信息。
附件: PS命令结果中各列的含义:
用户进程所属的用户
PID进程ID
%CPU进程占用CPU的百分比
%MEM进程占用内存的百分比
VSZ虚拟内存占用大小单位: kb (千字节) ) ) ) ) ) ) ) )。
RSS的实际内存占用大小单位: kb (关键字节) ) ) ) ) ) ) ) ) )。
TTY终端类型
STAT进程的状态
开始进程的开始时间
TIME进程的运行时间
用于启动命令进程的命令