1 / 13

Android 系统分析工具

Android 系统分析工具. ——dumpsys. Android 系统分析工具 —dumpsys. 简介 实现细节 几个例子 注意事项. 简介. Dumpsys 运行在小机上的可执行文件 Dump 用户感兴趣的系统服务信息 Dump 的信息,对调试有很大帮助 可能需要 root 权限 $ adb shell su -- dumpsys [option] # dumpsys [option] option 为已注册的服务. 实现细节. 所有的 dump 信息都是由重载了 Binder 中的 dump 函数的类来完成:

myles-scott
Télécharger la présentation

Android 系统分析工具

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Android系统分析工具 ——dumpsys

  2. Android系统分析工具—dumpsys • 简介 • 实现细节 • 几个例子 • 注意事项

  3. 简介 • Dumpsys运行在小机上的可执行文件 • Dump用户感兴趣的系统服务信息 • Dump的信息,对调试有很大帮助 • 可能需要root权限 $ adb shell su -- dumpsys [option] # dumpsys [option] option 为已注册的服务

  4. 实现细节 • 所有的dump信息都是由重载了Binder中的dump函数的类来完成: @Override protected void dump(FileDescriptor fd, PrintWriter pw, String[] args) {             ...    } • Dumpsys通过ServiceManager获取所有系统已注册服务 • 调用服务的dump方法 • 服务重载了dump方法 • 服务的proxy端和实现段都是继承自IBinder

  5. 实现细节

  6. Android系统分析工具—dumpsys • 简介 • 实现细节 • 几个例子 • 注意事项

  7. 几个例子 • Dumpsys meminfo • Dumpsys diskstats • Dumpsys SurfaceFlinger • Dumpsys window input

  8. Dumpsys meminfo • Dumpsys meminfo • Dumpsys meminfo –a • Dumpsys meminfo <pid> • Dumpsys –oom • VSS - Virtual Set Size 虚拟耗用内存(包含共享库占用的内存) • RSS - Resident Set Size 实际使用物理内存(包含共享库占用的内存) • PSS - Proportional Set Size 实际使用的物理内存(比例分配共享库占用的内存) • USS - Unique Set Size 进程独自占用的物理内存(不包含共享库占用的内存)

  9. Dumpsys diskstats • 这是一个简单的服务程序,提供功能仅为dump信息

  10. Dumpsys SurfaceFlinger • 常用查看命令,查看系统display的状况

  11. Dumpsys window input • 常用命令(整个window都是常用命令) • 查看系统输入子系统的状况

  12. 注意事项 • 无需trace,非常方便监控关心的关键信息的值 • Android的服务基本都有dump信息,debug的利器,效率极高(相比trace和断点调试) • 开发、维护人员需要经常使用并熟悉相关的表示 • 适时扩展dump的输出及格式,方便适时调试。 • 新增服务及接口,尽量实现此dump功能,以提高debug效率。 • 常用服务需要掌握调试技巧

  13. Thanks!

More Related