关于查看进程所占用物理内存的问题

关于查看进程所占用物理内存的问题

一般查看进程所占物理内存的方法有:
1) top
其中的RES(其实就是RSS) 和SHR(就是本进程中共享库等占用的总大小,不取平均时)列。

创新互联长期为上千家客户提供的网站建设服务,团队从业经验10年,关注不同地域、不同群体,并针对不同对象提供差异化的产品和服务;打造开放共赢平台,与合作伙伴共同营造健康的互联网生态环境。为洪洞企业提供专业的成都网站建设、成都网站制作洪洞网站改版等技术服务。拥有十年丰富建站经验和众多成功案例,为您定制开发。

2)ps
其中ps或者新版本android中ps -A显示
其中的RSS

3)pmap
新版本的android支持pmap命令
pmap -x 进程号
其中的
PSS和swap列。
swap是交换到zram或者磁盘的物理内存大小。

需要注意的是:
Terms
VSS- Virtual Set Size 虚拟耗用内存(包含共享库占用的内存)
RSS- Resident Set Size 实际使用物理内存(包含共享库占用的内存)
PSS- Proportional Set Size 实际使用的物理内存(比例分配共享库占用的内存)
USS- Unique Set Size 进程独自占用的物理内存(不包含共享库占用的内存)
一般来说内存占用大小有如下规律:VSS >= RSS >= PSS >= USS

另外android以前使用
MALLOC_IMPL = dlmalloc
来切换dlmalloc和jemalloc。没有定义MALLOC_IMPL宏时,默认是jemalloc

android新版本,例如android O,不能再定义MALLOC_IMPL了,否则lunch时报错。而改用:
MALLOC_SVELTE = true 来disable tcache to configure jemalloc for low-memory。
具体对应android8.1来说,build/make/core/soong_config.mk中通过MALLOC_SVELTE控制Malloc_not_svelte的$(SOONG_VARIABLES),从而影
响到external/jemalloc/的Android.bp文件的对应的cflags的配置。

另外我的相关培训视频请看:
欢迎观看我发布的各个课程: https://edu.51cto.com/lecturer/8896847.html

我的新的更多优惠的打包课程链接如下:
https://edu.51cto.com/sd/0a9d4


网站题目:关于查看进程所占用物理内存的问题
网站路径:http://myzitong.com/article/jcigcs.html