12/19/2008

Bootchart on Android

I tried bootchart to see how Android boots up and how long each process takes.

First, rebuild /init with bootchart enabled.
$ cd mydroid
$ export INIT_BOOTCHART=true
$ make clean
$ make

Copy it to Zaurus and setup environment as written in README.BOOTCHART in system/core/init.
$ scp out/target/product/generic/root/init root@zaurus:~/android-root/
$ ssh root@zaurus
# echo 1 > android-root/data/bootchart
# echo 5 > android-root/data/bootchart-stop

Make android-root/tmp directory and boot Android up.
# mkdir android-root/tmp
# chmod 777 android-root/tmp
# chroot android-root /init

After shutting Android down, copy grab-bootchart.sh to the same directory as the adb tool.
$ cp mydroid/system/core/init/grab-bootchart.sh mydroid/out/host/linux-x86/bin
$ cd mydroid/out/host/linux-x86/bin

In grab-bootchart.sh, adb is executed without path and I don't set PATH to adb, so simply modify the scrpit from "adb pull" to "./adb pull".

Boot Android up on Zaurus again, then run the script on the host PC.
$ export ADBHOST=zaurus
$ ./adb kill-server
$ ./adb start-server
$ sudo ./grab-bootchart.sh

On Ubuntu 8.04, the visualizer can be installed by apt-get.
$ sudo apt-get install bootchart
$ java -jar /usr/share/bootchart/bootchart.jar ./bootchart.tgz

The result, bootchart.png, looks like this.
bootchart.png
posted by 安藤恐竜 at 09:43 | Comment(0) | TrackBack(0) | 日記

広告


この広告は60日以上更新がないブログに表示がされております。

以下のいずれかの方法で非表示にすることが可能です。

・記事の投稿、編集をおこなう
・マイブログの【設定】 > 【広告設定】 より、「60日間更新が無い場合」 の 「広告を表示しない」にチェックを入れて保存する。


×

この広告は90日以上新しい記事の投稿がないブログに表示されております。