RSSResident Set Size驻留集大小是一个进程当前有多少内存页面实际驻留在物理内存 RAM 中。简单理解RSS 看的是“现在有多少页面真的在内存条里”而不是申请了多少地址或获得了多少内存承诺。接着用酒店来理解概念酒店比喻虚拟地址空间圈出了多少房间编号提交量正式预订了多少房间RSS现在实际入住了多少房间例如一个游戏保留虚拟地址8 GB 提交内存 2 GB如果这部分已提交内存中当前有500 MB驻留在 RAM那么这部分对 RSS 的贡献就是约500 MB。不过游戏还会加载代码、动态库、映射文件等它们驻留的页面也可能计入 RSS所以整个进程的 RSS 不一定就是 500 MB。RSS 包含哪些内存通常包括当前驻留在 RAM 中的程序代码堆内存例如游戏对象、部分资源数据栈内存动态库文件映射和共享内存页面。不包括只是保留、没有实际驻留的地址范围已被换出、当前不在 RAM 中的页面。独立显卡的显存也不能简单算进 RSS。最容易误解RSS 不全是进程“独占”的假设两个进程共享同一份100 MB的动态库页面而且这些页面都计入各自的驻留集进程 A 的 RSS包含这 100 MB 进程 B 的 RSS也包含这 100 MB但物理内存里这份共享页面只有一份。因此把所有进程的 RSS 相加可能重复计算共享内存。这也是为什么 Linux / Android 中还会看PSSRSS共享页面在每个进程中都完整计入。 PSS共享页面按比例分摊。在上面的例子里如果只有这两个进程共享100 MB 对各自 PSS 的贡献就是约50 MB。RSS 高就说明内存泄漏吗不一定。RSS 上升可能是加载了更多资源访问了原先尚未驻留的页面分配器保留了已释放的内存准备复用确实发生了内存泄漏。因此释放游戏对象 ≠ 内存立即归还操作系统 ≠ RSS 立即下降一句话记住提交量是“系统答应提供多少”RSS 是“当前有多少页面真的在 RAM 里”但其中可能有与其他进程共享的部分。RSS 常见于 Linux / AndroidWindows 中与它相近的概念叫Working Set工作集。