启动过程中将日志输出屏蔽,可以节省一定的启动时间
具体做法:
在uboot中设置一个环境变量,作为开关:printf_off=1
在内核中,通过全局变量bootpara.print_off作为开关判断依据
在内核kernel/printk.c __add_preferred_console函数的最开始,加入以下判断语句
if(bootpara.printf_off)
{
selected_console = -1;
return 0;
}
selected_console是一个全局变量,在注册console终端时(register_console)会对该值作判断。由于串口驱动注册不成功,自然整个打印也不会在串口上有任何输出,包括脚本里面的echo打印也不会输出到串口,但可以将其打印重订位到文件里。
为了启动加速,通常将启动过程中的打印屏蔽,但当应用起来以后,需要调试的日志,这时可以再讲串口终端使能
/sbin/getty -L ttyS0 115200 vt100 -n root