通常来讲内存占用大小有以下规律:VSS>=RSS>=PSS>=USSide
虚拟耗用内存(包含共享库占用的所有内存,以及分配但未使用的内存)。其大小还包括了可能不在RAM中的内存(好比malloc分配了空间,但还没有写入)。VSS不多被用于判断一个进程的真实内存使用量。blog
实际使用物理内存(包含共享库占用的所有内存)。可是RSS仍是可能会形成误导,由于它仅仅表示该进程所使用的全部共享库的大小,它无论有多少个进程使用该共享库,该共享库仅被加载到内存一次。因此RSS并不能准确反映单进程的内存占用状况。进程
实际使用的物理内存(比例分配共享库占用的内存,按照进程数等比例划分)。例如,若是有三个进程都使用了一个共享库,共占用三十页内存。那么PSS将认为每一个进程分别占用改共享库十页的大小。PSS是很是有用的数据,由于系统中全部进程的PSS相加的话,就恰好反映了系统中的总共占用的内存。而当一个进程别销毁以后,其占用的共享库那部分比例的PSS,将会再次按比例分配给余下使用该库的进程。这样PSS可能会形成一些误导,由于当一个进程销毁的后,PSS不能准确的表示返回给全局系统的内存。内存
进程独自占用的物理内存(不包含共享库占用的内存)。USS是很是有用的数据,由于它反映了运行一个特定进程真实的边际成本(增量成本)。当一个进程被销毁后,USS是真实返回给系统的内存。当进程中存在一个可疑的内存泄漏时,USS是最佳观察数据。it