您的位置:首页 > 其它

DM355 启动时间优化

2009-03-23 23:34 330 查看
Boot time optimization

Boot Time

"Boot Time" referred in this page is the time elapsed from "chip coming out of reset" to "Linux Prompt" This page considers under 2 seconds boot time as fast boot

In short

Reuse the existing knowledge. Lot of knowledge is available inside and outside of TI /* provide relevant links here */. Measure and identify boot time spenders. Optimize them. U-boot probably is one of the key areas to target.

Techniques

Optimize U-Boot

Choose the optimal EMIF settings based on NOR used

Optimize the NOR to RAM copy

Optimize Crc32

Avoid printfs

Avoid I2C or any other slow peripheral access during U-boot

Optimize Kernel

Remove unused components from Kernel

Use loadable modules option to defer initialization of components to after-boot.
Example: network initialization.

Avoid Linux timer calibration loop

Avoid Kernel printks

Optimize Filesystem

Rebuild Rootfilesystem with minimal components

Use cramfs as rootfilesystem

Linux Boot Sequence

ARM boots and starts executing U-boot code from NOR in-place

U-boot copies Kernel to RAM

U-boot copies filesystem to RAM (copy can be avoided using flash filesystem /* link to relevant page here */ )

U-Boot sets parameters and starts Kernel

Kernel uncompresses itself

Kernel initialization

Driver Initialization

Init

Init scripts

Shell

目前把yaffs2改成的cramfs 启动速度在10s左右
Avoid Linux timer calibration loop 可以再试试
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: