本文讲述如何设置Android手机来运行ARM Streamline性能分析器的各项步骤。 对于运行ARM Linux或Android原生应用程序和代码库的手机来说,ARM Streamline性能分析器是一款系统级的可视化分析工具。它结合了ARM Linux内核模块、守护程序以及图形用户界面,可将系统跟踪和采样数据转换为以可视化和统计式的报告来呈现数据。
首先需要做一些准备工作。
请务必注意!我有责任提醒您,本文所述内容对您的Android手机而言存在风险。最糟糕的情况就是“手机变砖”。 在继续操作前,请再三考虑,并且首先应当备份Android手机内的数据!
为了开展我们的工作,应当选用合适的Android手机作为目标ARM设备。例如,选择HTC Sensation 4GAndroid手机。 第1步(也是必不可少的一步)是禁用快速启动(如果HTC手机已启用了该功能)。方法为:进入Android setting(Android设置)> Power(电源)> Fast boot(快速启动)(取消选中该框)。 第2步则是启动手机进入HBOOT(引导加载程序)界面:关闭手机电源。确认手机完全关闭后,同时按住<POWER(电源)>按钮和<VOL-DOWN(音量调低)>按钮,直到出现白色的HBOOT屏幕,如下图1所示。 图1 HBOOT屏幕
如果HTC手机的安全锁状态为S-ON,无需担忧。您可访问HTC的官方网站Unlock Bootloader。按照网页所提供的内容,来解锁您的HTC手机。
由于Streamline是ARM Development Studio 5的一个组成模块,因此可下载免费的ARM DS-5公众版来进行安装。当然,我假设您已经预装了Eclipse(到本文撰写时为止,仅Eclipse的Windows版以及32位Linux JVM版支持DS-5 CE)。
Streamline使用了内核级的硬件性能计数器来精确记录系统资源。必须启用某些Linux内核配置选项后,才能在Android系统上运行Streamline。如果要进行下一步,那么一份Linux内核源代码拷贝是必不可少的。HTC Sensation 4G手机的用户,可从HTC的网站Kernel Source Code下载Linux内核源代码。通过在一份较长的网页清单上寻找相匹配的HTC内部代码PYRAMID,可以找到正确的代码包“HTC Sensation 4G – MR – 2.6.35 kernel source code (2.6.35.13)”。
最后要做的准备工作是设置Android开发环境。这并非用于常规Android应用程序开发,而是专用于Android和Linux系统的内核级开发。我列出以下参考环境:
创建一条适用于所有HTC手机和所有模式的规则。该规则改编自Using Hardware Devices | Android Developers。使用root权限来创建或修改/etc/udev/rules.d/51-android.rules 文件。在文件中加入下列行: SUBSYSTEM=="usb", SYSFS{idVendor}=="0bb4", MODE="0666" 保存文件,然后将文件权限修改为允许任何用户读取: $ chmod a+r /etc/udev/rules.d/51-android.rules 未完,下一章