53 lines
2.1 KiB
Plaintext
53 lines
2.1 KiB
Plaintext
|
This version of init contains code to perform "bootcharting", i.e. generating log
|
||
|
files that can be later processed by the tools provided by www.bootchart.org.
|
||
|
|
||
|
To activate it, you need to define build 'init' with the INIT_BOOTCHART environment
|
||
|
variable defined to 'true', for example:
|
||
|
|
||
|
touch system/init/init.c
|
||
|
m INIT_BOOTCHART=true
|
||
|
|
||
|
On the emulator, use the new -bootchart <timeout> option to boot with bootcharting
|
||
|
activated for <timeout> seconds.
|
||
|
|
||
|
Otherwise, flash your device, and start it. Then create a file on the /data partition
|
||
|
with a command like the following:
|
||
|
|
||
|
adb shell 'echo $TIMEOUT > /data/bootchart-start'
|
||
|
|
||
|
Where the value of $TIMEOUT corresponds to the wanted bootcharted period in seconds;
|
||
|
for example, to bootchart for 2 minutes, do:
|
||
|
|
||
|
adb shell 'echo 120 > /data/bootchart-start'
|
||
|
|
||
|
Reboot your device, bootcharting will begin and stop after the period you gave.
|
||
|
You can also stop the bootcharting at any moment by doing the following:
|
||
|
|
||
|
adb shell 'echo 1 > /data/bootchart-stop'
|
||
|
|
||
|
Note that /data/bootchart-stop is deleted automatically by init at the end of the
|
||
|
bootcharting. This is not the case of /data/bootchart-start, so don't forget to delete it
|
||
|
when you're done collecting data:
|
||
|
|
||
|
adb shell rm /data/bootchart-start
|
||
|
|
||
|
The log files are placed in /data/bootchart/. you must run the script tools/grab-bootchart.sh
|
||
|
which will use ADB to retrieve them and create a bootchart.tgz file that can be used with
|
||
|
the bootchart parser/renderer, or even uploaded directly to the form located at:
|
||
|
|
||
|
http://www.bootchart.org/download.html
|
||
|
|
||
|
NOTE: the bootchart.org webform doesn't seem to work at the moment, you can generate an
|
||
|
image on your machine by doing the following:
|
||
|
|
||
|
1/ download the sources from www.bootchart.org
|
||
|
2/ unpack them
|
||
|
3/ in the source directory, type 'ant' to build the bootchart program
|
||
|
4/ type 'java -jar bootchart.jar /path/to/bootchart.tgz
|
||
|
|
||
|
technical note:
|
||
|
|
||
|
this implementation of bootcharting does use the 'bootchartd' script provided by
|
||
|
www.bootchart.org, but a C re-implementation that is directly compiled into our init
|
||
|
program.
|