文章1:一篇简洁的快启优化介绍
通常快启系统:是给用户最快反馈,提前给出视觉和听觉反馈。
例子1:PWR ON 音乐
例子2:低功耗状态恢复
前提要求:处理器选择,clock,存储设备
基本启动流程:
- PWR ON →
- PWR/CLK/Reset → 解复位
- Load&Exe Bootloader → 更小的bootloader 保持简单,只有必要的硬件初始化
- Load&Exe Kernel → 更小的kernel
- Kernel Init → 必要的驱动
- Locate/Load/Mount RootFS → 更小的文件系统
- init/userland App
优化手段:
- 测量用压缩还是非压缩镜像
- 有些架构没有使能cache
- initramfs瘦身
- 设备驱动
- 删除initramfs
- 不需要,驱动本身直接继承到内核、
- 内核驱动:多一个驱动,多一个初始化和注册,以及设配探测
- LPJ时间设置为固定,配置到命令行。loops-per-jiffy
- JFFS2 for Flash
- CRAMFS 使用
- tmpfs 使用
- 使用KFT测量启动时间
文章2:
该文章使用基于AM335x Sitara 处理器Beaglebone black(单核1GHz@32bit ARM架构)。通过裁剪优化启动流程,做到带Qt图形界面1S启动:
做出来的是一个IVI界面现实屏,效果如下: