本博客第一次转载的文章,原文访问不到了,这篇是从google cache里挖出来的,为有需要的同学准备。原文地址
 
 
Posted by Fang Bao,(鲍方)

11 June 2012
 
本文讲述如何设置Android手机来运行ARM Streamline性能分析器的各项步骤。

对于运行ARMLinux或Android原生应用程序和代码库的手机来说,ARM Streamline性能分析器是一款系统级的可视化分析工具。它结合了ARM Linux内核模块、守护程序以及图形用户界面,可将系统跟踪和采样数据转换为以可视化和统计式的报告来呈现数据。

Streamline支持运行ARM Linux或Android系统的Cortex™-A8、Cortex-A9、Cortex-A15、ARM9™以及ARM11™处理器。在本文中,目标ARM设备为HTC Sensation 4G Android 手机。开始设置前,你有必要了解以下重要信息。

  • Streamline 5.7版。Streamline是ARM Development Studio 5的一个组成模块。因此,可通过下载ARM DS-5专业版、基础版或免费的DS-5公众版(针对Android系统)来获得它。
  • 目标ARM设备,HTC Sensation 4G

1 准备工作 
首先需要做一些准备工作。

1.1 备份Android手机的数据
请务必注意!我有责任提醒您,本文所述内容对您的Android手机而言存在风险。最糟糕的情况就是“手机变砖”。

在继续操作前,请再三考虑,并且首先应当备份Android手机内的数据!

1.2 检查并解锁Android手机
为了开展我们的工作,应当选用合适的Android手机作为目标ARM设备。例如,选择HTC Sensation 4G Android手机。

第1步(也是必不可少的一步)是禁用快速启动(如果HTC手机已启用了该功能)。方法为:进入Android setting(Android设置)> Power(电源)> Fast boot(快速启动)(取消选中该框)。

第2步则是启动手机进入HBOOT(引导加载程序)界面:关闭手机电源。确认手机完全关闭后,同时按住<POWER(电源)>按钮和<VOL-DOWN(音量调低)>按钮,直到出现白色的HBOOT屏幕,如下图1所示。

图1 HBOOT屏幕

在HBOOT屏幕中,应当确认如下必要信息。

  • HTC手机的内部代码。如果是HTC sensation 4G手机,那么内部代码是图中红框标示的PYRAMID。内部代码是HTC Android手机的标识,通过它可搜索到HTC发布的正确Linux内核源代码包。
  • 安全锁的状态。目前我这台手机的安全锁状态为S-OFF(安全锁关闭),在图1中用红框标示。安全锁对实现本文目的十分重要。S-OFF表示设备的NAND Flash ROM处于解锁状态并且可写,这也就意味着无需进行签名检查就可以更新Android系统的某些分区;例如,通过自定义镜像文件来更新启动分区。HTC设备的默认设置为S-ON,这表示只能使用HTC官方的固件镜像文件来更新系统(因为启用了签名检查)。

如果HTC手机的安全锁状态为S-ON,无需担忧。您可访问HTC的官方网站Unlock Bootloader。按照网页所提供的内容,来解锁您的HTC手机。

1.3 下载并安装ARM DS-5
由于Streamline是ARM Development Studio 5的一个组成模块,因此可下载免费的ARM DS-5公众版来进行安装。当然,我假设您已经预装了Eclipse(到本文撰写时为止,仅Eclipse的Windows版以及32位Linux JVM版支持DS-5 CE)。

1.4 下载Linux内核源代码
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)”。

1.5 设置Android开发环境
最后要做的准备工作是设置Android开发环境。这并非用于常规Android应用程序开发,而是专用于Android和Linux系统的内核级开发。我列出以下参考环境:

  • 在x86 PC上运行的64位Ubuntu 10.10 版本
  • Linux系统下的GNU ARM Toolchain,本文所使用的是下载自Mentor Graphics.的CodeSourcery ARM GNU/Linux Toolchain。
  • Android开发者网站下载的Android SDK r16-linux安装程序。
  • 通过Android SDK r16-linux安装程序下载安装的Android SDK平台工具包
  • USB电缆 –电缆两端为USB插头(A型)和微型USB插头(B型)
  • 空的SD卡,容量为1GB或更大。
  • 在Linux PC上配置通过USB访问HTC Android手机,方法如下:

创建一条适用于所有HTC手机和所有模式的规则。该规则改编自
http://developer.and...ing/device.html。使用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

[转]设置Android手机以使用ARM Streamline进行性能分析(一)的更多相关文章

  1. [转]设置Android手机以使用ARM Streamline进行性能分析(二)

    原文因为arm社区改版访问不到了,原作者鲍方,原文地址,这篇是从google cache里挖出来的,希望能帮到要对cocos2dx优化的各位   Posted by Fang Bao, Leave C ...

  2. ubuntu下设置Android手机驱动

    如果下面的文章不好使,建议读一这个文章:http://forum.xda-developers.com/xperia-u/general/howto-usb-connection-to-ubuntu- ...

  3. Android手机app启动的时候第一个Activity必须是MainActivity吗

    原文:Android手机app启动的时候第一个Activity必须是MainActivity吗 Android手机APP启动的第一个Activity是可以自己设置的,不是必须的MainActivity ...

  4. Android 手机卫士--设置界面&amp;功能列表界面跳转逻辑处理

    在<Android 手机卫士--md5加密过程>中已经实现了加密类,这里接着实现手机防盗功能 本文地址:http://www.cnblogs.com/wuyudong/p/5941959. ...

  5. Android 手机设置CMWAP 接入点

    Android 手机设置CMWAP 接入点 设置--- 无限控件---移动网络设置---接入点名称----再按菜单---选择新apn 第一步,设置CMNET 上网APN 新建 APN 1.名称:cmn ...

  6. Android手机通过APN设置上网的方法

    今天一个朋友问了我关于android网络设置的问题,感觉还是挺有趣,特分享如下: 他是在香港买了一款LGP500的手机,系统是android系统,但是回来之后不能上网,于是在网上搜了很多资料,但是设置 ...

  7. Android 手机卫士--实现设置界面的一个条目布局结构

    本文地址:http://www.cnblogs.com/wuyudong/p/5908986.html,转载请注明源地址. 本文以及后续文章,将一步步完善功能列表: 要点击九宫格中的条目,需要注册点击 ...

  8. Android手机开发者模式设置

    通用设置 情景1 开发者选项已经激活,并且在设置列表中能看到 设置-->开发者选项(开发者选项已经激活) 情景2 开发者选项还没有激活,并且在设置列表中能不能看到 如果没有看到开发者选项是因办手 ...

  9. Android 手机卫士--确认密码对话框编写

    本文接着实现“确认密码”功能,也即是用户以前设置过密码,现在只需要输入确认密码 本文地址:http://www.cnblogs.com/wuyudong/p/5940718.html,转载请注明出处. ...

随机推荐

  1. 前端学HTTP之摘要认证

    前面的话 上一篇介绍的基本认证便捷灵活,但极不安全.用户名和密码都是以明文形式传送的,也没有采取任何措施防止对报文的篡改.安全使用基本认证的唯一方式就是将其与SSL配合使用 摘要认证与基本认证兼容,但 ...

  2. FastCgi与PHP-fpm关系

    1 CGI  (1)什么是CGI: CGI(Common Gateway Interface)公共网关接口, 是WWW技术中最重要的技术之一,有着不可替代的重要地位, CGI是外部应用程序(CGI程序 ...

  3. checkedListBox

    checkedListBox一键删除多个选中items private void button3_Click(object sender, EventArgs e) { ; i < checke ...

  4. 【BZOJ2438】 [中山市选2011]杀人游戏 tarjan强连通分量+缩点

    Description 一位冷血的杀手潜入 Na-wiat,并假装成平民.警察希望能在 N 个人里面,查出谁是杀手. 警察能够对每一个人进行查证,假如查证的对象是平民,他会告诉警察,他认识的人, 谁是 ...

  5. ITerm2下使用ssh访问Linux

    通常情况下,iTerm2访问远程Linux使用ssh,与Termial基本一样,方法如下: ssh <用户名>@<ip> 然后输入访问的密码即可.当然还有的时候需要指定访问端口 ...

  6. Eclipse 最全快捷键

    英文的

  7. OC语言类的本质和分类

    OC语言类的深入和分类 一.分类 (一)分类的基本知识  概念:Category  分类是OC特有的语言,依赖于类. 分类的作用:在不改变原来的类内容的基础上,为类增加一些方法. 添加一个分类: 文件 ...

  8. BestCoder Round #41

    T1:ZCC loves straight flush(hdu 5228) 题目大意: 给出5张牌,问至少替换多少张牌可以构成同花顺. 题解: 1.直接枚举所有同花顺(枚举花色A-D和最小的数字1-1 ...

  9. phpcms 01

    1 安装完成phpcms,然后打开2 C:\wamp\www\phpcms\templates 复制下面的default 目录,改名为ypzy2014 3 修改ypzy2014文件夹下的config配 ...

  10. 如何绕过CDN找源站ip?

    这是一个总结帖,查了一下关于这个问题的国内外大大小小的网站,对其中说的一些方法总结归纳形成,里面具体发现ip的方法不是原创,所有参考的原贴都也贴在了后面,大家可以自行看看原贴. 首先,先要明确一个概念 ...