imx6ul之开机启动速度优化与内核裁剪
一、优化linux内核部分1.裁剪linux内核,将不必要的功能、不需要的驱动去掉,能够开机后加载的就编译成模块加载。能优化的选项做优化。2.对于使用了ubi文件系统的nandflash,修改linux内核配置开启fastmap另外修改内核源码在linux-4.1.15/drivers/mtd/ubi/build.c的第83行static bool fm_autoco...
一、优化linux内核部分
1.裁剪linux内核,将不必要的功能、不需要的驱动去掉,能够开机后加载的就编译成模块加载。能优化的选项做优化。
2.对于使用了ubi文件系统的nandflash,修改linux内核配置开启fastmap

另外修改内核源码
在linux-4.1.15/drivers/mtd/ubi/build.c的第83行
static bool fm_autoconvert = true;
用于开启fastmap。
3.预设lpj,减少计算lpj的时间
在linux-4.1.15/init/calibrate.c的第15行
unsigned long preset_lpj = 240000
4.关闭系统启动过程中的串口控制台输出,将Console on IMX serial port 注释掉

5.修改创建tty的数量
在linux-4.1.15/include/uapi/linux/vt.h中的第9行
#define MIN_NR_CONSOLES 1 /* must be at least 1 */
#define MAX_NR_CONSOLES 63 /* serial lines start at 64 */
#define MAX_NR_USER_CONSOLES 63 /* must be root to allocate above this */
改为
#define MIN_NR_CONSOLES 1 /* must be at least 1 */
#define MAX_NR_CONSOLES 7 /* serial lines start at 64 */
#define MAX_NR_USER_CONSOLES 7 /* must be root to allocate above this */
6.将内核格式编译成uImage启动而不是zImage,但是效果不是很明显
7.打开Linux开机启动过程中串口打印时间戳,根据消耗的时间裁剪优化内核,打开时间戳的方法如下:

更多推荐



所有评论(0)