Android啓動過程性能分析工具Bootchart

一、簡介

Bootchart是一個用於GNU/Linux啓動過程的性能分析和可視化呈現的開源軟件工具。在系統啓動過程中,自動收集資源利用率和進程信息,然後生成PNG、SVG或EPS編碼的圖表。

Android系統已經集成了Bootchart工具,位於源碼的system/core/init/bootchart.cpp。在系統啓動過程中,由於Bootchart是在init進程啓動之後,纔在後臺執行測量任務,所以採集的結果不包含bootloader和kernel的啓動時間。

Bootchart官網

二、數據採集

1. Android 5.1及之前

沒有將bootchart編譯進系統中,需要重新編譯、替換boot.img文件。

https://blog.csdn.net/harry_helei/article/details/7281356

2. Android 6.0及之後

生成數據文件和Log:

adb shell
# 在6.0系統之後,需要通過su提權
su
# enabled文件作爲啓用bootchart的標記
touch /data/bootchart/enabled
# 自定義採樣時間,且不能超過10*60s(可選,在6.0系統上必選)
echo $TIME_OUT > /data/bootchart/start
# 重啓
reboot

如下所示:

壓縮、導出:

adb shell
cd  /data/bootchart/
tar -zcf boochart.tgz *
adb pull xxx xxx
exit

三、配置PC環境

親測在Ubuntu 18.04上,提示錯誤:"沒有可安裝候選":

sudo apt-get install bootchart

方法一:(推薦)

sudo apt-get install pybootchartgui 

方法二:

1. 下載源碼bootchart-0.9.tar.bz2

https://sourceforge.net/projects/bootchart/

2. 安裝Ant工具

sudo apt-get install ant 

3. 使用Ant編譯源碼

解壓源碼:

tar –jxvf bootchart-0.9.tar.bz2

在根目錄編譯:

ant

4. 生成bootchart.jar

四、生成圖表

方法一:(推薦)

bootchart bootchart.tgz

方法二:

java -jar bootchart.jar bootchart.taz

圖表如下:

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章