我正在查看下面给出的命令的输出
adb shell dumpsys meminfo com.imangi.templerun
但是,我无法正确理解这一点。
有人能帮我理解这一点吗?
由于“dumpsys”的不同版本显示的列和行可能有所不同,我将尝试在这里提供一些通用概述......
Android 中的每个应用程序都在不同的进程中运行,该进程运行其自己的 Dalvik VM 实例。
-
本机堆行表示进程本身使用的内存(例如:本机 C malloc)。
-
达尔维克堆是由 Dalvik VM 分配的内存(例如:Java Android 代码中的变量)。
-
达尔维克其他是用于 JIT 和 GC 的内存。
Android 可以在多个进程之间共享内存页面(想想常见框架的代码)。干净的内存是指自从分配或从存储(应用程序的代码)加载以来一直没有改变的内存。脏内存是用于计算的空间。 Android 没有交换机制,因此脏内存也是 RAM,当应用程序退出时将被释放。
-
私人肮脏是非共享的脏内存(我猜你已经想到了)。
-
私人清洁是非共享的干净内存(以及那个)。
-
PSS比例集大小:这是一个棘手的测量,其中所有私有页面贡献其大小的 100%,共享内存贡献“大小/(共享进程数)”。这样,如果您汇总所有进程的所有 PSS,您将获得已使用的总内存。
-
交换肮脏不知道。我对此有疑问:Android dumpsys meminfo“Swapped Dirty”列的含义是什么? https://stackoverflow.com/questions/30872464/android-dumpsys-meminfo-swapped-dirty-coloumn-meaning
进一步阅读:https://developer.android.com/tools/debugging/debugging-memory.html https://developer.android.com/tools/debugging/debugging-memory.html
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)