在线时间0 小时
UID396696
注册时间2016-1-11
NXP金币0
该用户从未签到
新手上路

- 积分
- 9
- 最后登录
- 2016-3-13
|
您好:
我目前在做优化系统,加快启动速度的事情,遇到了些困难,不知您能否给我提供些帮助,谢谢!
我有一块imx6dq的开发板,跑5.0.2系统,下面是我的问题。
1、当我敲make imx_v7_android_defconfig来编译内核并下载到板子后,系统启动是OK的,但是如果我关闭内核的蓝牙或者多媒体选项后,重新编译内核并烧写boot-imx6dl.img和 system.img,系统启动不了,会一直停留在系统的logo界面。
2、我不知道为什么我关闭一些本地服务,例如 healthd,media,drm,surfaceflinger在init.rc文件中,开发板将会停留在系统logo处,不会进入界面,我打印log显示wait service surfaceflinger,所以我想知道哪些本地服务可以关闭。
3、我不知道哪些系统服务可以关闭在SystemServer.java文件中,例如AccountManagerService,LightsService, VibratorService等等,如果我需要关闭一些服务,我仅仅把他注释起来就可以了吗?需要修改其他文件吗?如果需要,要修改哪些文件?
4、另外一个优化的地方是预加载类preloaded-classes,但是我不知道哪些类是有用的,如何删除它们,因为当我在每个类之前添加“#”,我编译源码后,preloaded-classes会复原。
5、还有一个优化的地方是资源文件,包含drawable resource,如何找到它们来优化?
6、你能够告诉我make bootimage,make ramdisk,make snod,make systemimage,mm,mmm这些指令什么场合用到吗?mm和mmm是不是只有在framework层添加代码或者在package里面添加app源码才编译并用make systemimage生成镜像?make bootimage是不是只有在修改内核的init.c和init.rc文件采用这个指令,make bootimage会生成ramdisk,我目前需要将ramdisk和zImage一起编译才能生成boot.img,那么make ramdisk是什么意思呢?
7、我重新编译了system.img,但是每次要烧写系统镜像,第一次上电启动需要花费很长时间,有没有什么简单方法把修改好的系统放到我的开发板上来达到测试我修改的服务对我的系统启动有没有影响的方法?
|
|