Android内存占用情况分析手机系统内存-Android内存占用情况分析
本文主要讲解用系统自带工具分析android手机在运行时内存分部情况,当手机内存不足时,可以按照下面步骤分析到底是谁占用了内存。

在终端输入以下指令:
adb shell dumpsys meminfo
主要信息如下图:
查看手机剩余内存方法有很多,这个方法比较准确。
Total RAM为手机的总内存;
Free RAM为剩余内存:其中cached pss为后台缓冲进程,当系统内存不足或缓冲进程数目达到系统限制最大数时会杀掉(部分)以释放内存。cached为高速缓冲存储器的内存,这部分内存已经分配好了,但是系统为了节约频繁申请内存开销,free时会把一部分内存cache起来,当用户再次申请内存时可能会直接从缓冲拿一块出来。free为未分配的物理内存;
Used RAM为用户态使用总内存;
Lost RAM为内核态使用内存,比如OpenGL纹理内存、GPU占用内存、图形显示ION buffer都包含在Lost RAM里。
值得注意的是当Free RAM比较小时可以认为系统内存不足(有种情况不能确定就是:Lost RAM占用内存很大,Lost RAM可能是内核缓冲内存太多了导致Free RAM小,但是并不是内存足,因为当内存不足时kernel会释放缓存,可以通过echo 3 > /proc/sys/vm/drop_caches主动释放)。
如果想了解根据详细内存分配情况可以在终端输入:
adb shell cat /proc/meminfo
其中:
MemTotal: LowTotal与HighTotal总和,系统总可用RAM大小(即物理内存减去一些预留位和内核的二进制代码)
MmFree: LowFree与HighFree的总和,被系统留着未使用的内存
Buffers: 用来给文件做缓冲大小
Cached: 被高速缓冲存储器(cache memory)缓存的内存的大小(等于 diskcache minus SwapCache)
SwapCached: 被高速缓冲存储器(cache memory)用的交换空间的大小已经被交换出来的内存,但仍然被存放在swapfile中。用来在需要的时候很快的被替换而不需要再次打开I/O端口
Active: 在活跃使用中的缓冲或高速缓冲存储器页面文件的大小,除非非常必要否则不会被移作他用
Inactive: 在不经常使用中的缓冲或高速缓冲存储器页面文件的大小,可能被用于其他途径
HighTotal: 高内存,内核不能直接访问的这部分内存
HighFree: 高内存剩余大小
LowTotal: 底内存,内核能够直接访问的内存
LowFree: 低内存剩余大小
SwapTotal: 交换空间的总大小
SwapFree: 未被使用交换空间的大小
Dirty: 等待被写回到磁盘的内存大小
Writeback: 正在被写回到磁盘的内存大小
AnonPages:未映射页的内存大小
Mapped: 设备和文件等映射的大小
Slab: 内核数据结构缓存的大小,可以减少申请和释放内存带来的消耗
SReclaimable:可收回Slab的大小
SUnreclaim: 不可收回Slab的大小(SUnreclaim+SReclaimable=Slab)
PageTables: 管理内存分页页面的索引表的大小
NFS_Unstable: 不稳定页表的大小
VmallocTotal: 可以vmalloc虚拟内存大小
VmallocUsed: 已经被使用的虚拟内存大小 top指令查看各进程内存
在终端输入:
adb shell top
查看某个进程内存
找到要查看的进程pid,在终端输入:
adb shell dumpsys meminfo pid
本文地址: https://k3g.kub2b.com/article/349904.html

广东省嘉亿联合数码科技有限公司是以工业数字喷墨印刷技术为核心的国家高新、专精特新科技企业、中国广告主协会副会长单位、东莞万江区智能制造协会会长单位。公司成立于2012年,坐落于被誉为“世界制造之都”的广东省东莞市,占地面积15000㎡,现有员工百余人,是集研发、生产、销售及方案打印服务于一体的综合型企业。 公司拥有自主研发团队和核心技术,旗下三大品牌(亿方、欧斯诺、华亿)七大系列(平板系列、导带系列、写真系列、视觉定位扫描系、圆柱体打印系列、onepass扫描系列、标签打印系列)产品,为广告标识、装饰建材、工艺礼品、3C电子、包装印刷、纺织印花、皮革彩印等多个领域提供了成熟的应用解决方案,深受国内外客户青睐。目前在全国34个省市自治区均有代理商和服务网点,海外深度合作了欧美、中东、东南亚、非洲等70多个国家和地区,并沿着一带一路国家发展政策建立海外仓和分公司。 公司始终坚持创新为魂、质量为本、客户至上、诚信经营的发展理念,立志成为数字喷墨印刷行业的领军企业,打造中国民族品牌,让中国智造走向世界!