LA启动时间优化

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/zoosenpin/article/details/82110590

1 修改Android mksh默认的列长度
不修改这个参数,adb shell后,输入超过80个字符,就不能看到完整的命令行

@ external/mksh/src/sh.h
EXTERN mksh_ari_t x_cols E_INIT(80);    /* tty columns */
EXTERN mksh_ari_t x_lins E_INIT(24);    /* tty lines */

2 Bootchart
2.1 URLs
android性能测试bootchart篇
https://blog.csdn.net/a624731186/article/details/41379807

Android 8.1 启动时间优化--耗时分析
https://blog.csdn.net/touxiong/article/details/80540940

2.2 AndroidM How-to
2.2.1 Bootchart下载
http://www.bootchart.org/download.html

在Linux桌面机器上:
apt-get install ant

解压下载的bootchart源代码,在bootchart源代码目录下执行ant,结束后,产生bootchart.jar,可以在Linux上分析,也可以将该jar包拷贝到Windows上

2.2.2 具体实施
CONFIG_DEBUG_USER=n

@ bootchart.c
#define LOG_ROOT  "/data/bootchart"
改为:
#define LOG_ROOT  "/dev/bootchart"

强制给timeout赋值:timeout = 120

touch system/core/init/bootchart.c
touch system/core/init/init.c
export INIT_BOOTCHART=true
make bootimage -j4
刷机后,重启

adb shell
skip the following two lines
mkdir /data/bootchart
echo 80 > /data/bootchart-start

logs under /dev/bootchart
busybox tar zcvf bootchart.tgz header kernel_pacct proc_diskstats.log proc_ps.log proc_stat.log
adb pull /dev/bootchart/bootchart.tgz .
java -jar bootchart.jar .\bootchart.tgz

猜你喜欢

转载自blog.csdn.net/zoosenpin/article/details/82110590