美文网首页
android系统中查看内存信息

android系统中查看内存信息

作者: 辉色投像 | 来源:发表于2019-11-29 16:11 被阅读0次

    adb shell cat proc/meminfo:

    看下大致内存使用情况 (free+buffers+cached)

    proc/meminfo 机器的内存使用信息

    /proc/pid/maps pid为进程号,显示当前进程所占用的虚拟地址。

    /proc/pid/statm 进程所占用的内存

    df 查看 存储空间使用情况

    ps -t |grep system_server (或 surfaceflinger, service manager, media server,zygote) ( 倒数第二个是不是 s) 异常情况有如’D’, ‘T’, ‘Z’ , ‘R’等

    图1

    adb shell  dumpsys meminfo

    dumpsys meminfo com.android.mms 打印一个app的mem信息

    图2

    adb shell procrank

    图3

    从以上打印可以看出,一般来说内存占用大小有如下规律:VSS >= RSS >= PSS >= USS

    VSS - Virtual Set Size 虚拟耗用内存(包含共享库占用的内存)是单个进程全部可访问的地址空间

    RSS - Resident Set Size 实际使用物理内存(包含共享库占用的内存)是单个进程实际占用的内存大小,对于单个共享库, 尽管无论多少个进程使用,实际该共享库只会被装入内存一次。

    PSS - Proportional Set Size 实际使用的物理内存(比例分配共享库占用的内存)

    USS - Unique Set Size 进程独自占用的物理内存(不包含共享库占用的内存)

    USS 是针对某个进程开始有可疑内存泄露的情况,进行检测的最佳数字。怀疑某个程序有内存泄露可以查看这个值是否一直有增加

    使用dumpsys meminfo查看内存信息

    脚本:

    adb shell ps -t> tsq/ps.txt

    adb shell top -t -m 5 -n 2 > tsq/top.txt

    adb shell service list  > tsq/serviceList.txt

    adb shell cat /proc/meminfo >tsq/meminfo

    adb shell cat /proc/buddyinfo >tsq/buddyinfo

    adb shell procrank > tsq/procrank.txt

    adb shell cat proc/sched_debug >tsq/sched_debug.txt

    adb shell cat proc/interrupts >tsq/interrupts.txt

    adb shell dumpstate > tsq/dumpstate.txt

    adb shell bugreport > tsq/bugreport.txt

    @echo "finish."

    pause

    相关文章

      网友评论

          本文标题:android系统中查看内存信息

          本文链接:https://www.haomeiwen.com/subject/ixjgwctx.html