可以使用adb shell dumpsys meminfo -a <process id>/<process name>来查看一个进程的memory。截图如下:

Naitve Heap Size: 从mallinfo usmblks获得,代表最大总共分配空间

Native Heap Alloc: 从mallinfo uorblks获得,总共分配空间

Native Heap Free: 从mallinfo fordblks获得,代表总共剩余空间

Native Heap Size 约等于Native Heap Alloc + Native Heap Free

mallinfo是一个C库, mallinfo 函数提供了各种各样的通过C的malloc()函数分配的内存的统计信息。

Dalvik Heap Size:从Runtime totalMemory()获得,Dalvik Heap总共的内存大小。

Dalvik Heap Alloc: Runtime totalMemory()-freeMemory() ,Dalvik Heap分配的内存大小。

Dalvik Heap Free:从Runtime freeMemory()获得,Dalvik Heap剩余的内存大小。

DalvikHeap Size 约等于Dalvik Heap Alloc + Dalvik Heap Free

OtherPss, include Cursor,Ashmem, Other Dev, .so mmap, .jar mmap, .apk mmap, .ttf mmap, .dex mmap, Other mmap, Unkown统计信息都可以在process的smap文件看到。

Objects and SQL 信息都是从Android Debug信息中获得。

其他类型 smap 路径名称 描述

Cursor /dev/ashmem/Cursor Cursor消耗的内存(KB)

Ashmem /dev/ashmem 匿名共享内存用来提供共享内存通过分配一个多个进程

可以共享的带名称的内存块

Other dev /dev/ 内部driver占用的在“Other dev”

.so mmap .so C 库代码占用的内存

.jar mmap .jar Java 文件代码占用的内存

.apk mmap .apk apk代码占用的内存

.ttf mmap .ttf ttf 文件代码占用的内存

.dex mmap .dex Dex 文件代码占用的内存

Other mmap 其他文件占用的内存

参考:

http://man7.org/linux/man-pages/man3/mallinfo.3.html

http://www.gnu.org/software/libc/manual/html_node/Statistics-of-Malloc.html

http://gee.cs.oswego.edu/pub/misc/malloc.h

http://www.redwolf-blog.com/?p=882

更多相关文章

  1. Android设置程序最小运行的堆内存
  2. native.js获取手机硬件基本信息实例代码android版
  3. Android(安卓)Tombstone/Crash的log分析和定位
  4. QTrace:一个不一样的Android(安卓)IDE
  5. 避免内存泄露专题
  6. Hi3716C Android(安卓)SDK编译说明
  7. Android(安卓)Camera简单整理(四)-Android(安卓)Camera性能Debug
  8. 内存泄漏优化---Bitmap优化
  9. LeakCanary使用详解

随机推荐

  1. 使用RxAndroid处理异步任务
  2. android 读取 AndroidManifest.xml 中的
  3. android 图片的拉伸方式(scaleType)
  4. Android(安卓)NDK开发之旅9--C语言--预编
  5. android动画的Interpolator
  6. android分辨率 .
  7. Android(安卓)ViewGroup.setDescendantFo
  8. 【UI交互效果】android UI效果二: 给选中
  9. APP字体大小,不随系统的字体大小变化而变
  10. Android(安卓)判断真机和模拟器的方法