fastboot主要原理是把点屏相关的必要模块和用户app放到ramdisk提前启动,实现快速亮屏的功能。由于fastboot模式下,rootfs是运行于内存中的,要求内存足够,这里建议使用202。并且在制作rootfs时尽量做小一些。
● 优点:可以实现快速亮屏
● 缺点:制作ramdisk需要占用额外内存,app size越大,制作的ramdisk就越大,吃的内存越多。所以在确定使用fastboot前,先要评估内存是否够用。
● Note:用户app如果很大,不建议使用fastboot。
fastboot的编译config只有kernel和project需要单独配置,boot跟正常启动的config一样。
nand flash:
configs/nvr/i2m/8.2.1/spinand.ram-glibc-squashfs.011a.128 //ssd202
configs/nvr/i2m/8.2.1/spinand.ram-glibc-squashfs.011a.64 //ssd201
kernel:
infinity2m_spinand_ssc011a_s01a_minigui_fastboot_doublenet_defconfig
为了使系统启动尽可能地快,我们需要将耗时的任务关闭或等系统启动后再执行:
# vi project/image/configs/i2m/rootfs_fastboot.mk
如下:
echo "busybox telnetd&" >> $(OUTPUTDIR)/rootfs/etc/profile
#echo \/customer\/bin\/zkgui \& >> $(OUTPUTDIR)/rootfs/etc/profile;
#echo sleep 8 >> $(OUTPUTDIR)/rootfs/etc/profile;
#echo /customer/demo.sh >> $(OUTPUTDIR)/rootfs/etc/profile;
编译:
# ./Release_to_customer.sh -f nand -p ssd201 -q fastboot -m 256
更新启动后,可以看到启动过程跳过了 uboot
关闭网络功能,也能加快开机时间:
# setenv autoestar 0
# saveenv
文档更新时间: 2022-06-29 14:29 作者:Aeeditor