在“第006课_开发板熟悉与体验(6节,免费)”中的第004节_使用uboot烧写裸板程序中,体验到了usb烧写的快感,但是心中有个小疑问:uboot烧到了nor flash中,启动uboot烧写kernel,文件系统功能,虽然没有指明是烧到哪里,但我猜是在NAND Flash的。也就是说,这个时候uboot跟kernel,文件系统等并不在同一个内存芯片里面,那uboot是怎么实现跳转的呢?然后根据视频删除params的时候也留意到,NAND里面已经有了BootLoader,这到底是怎么一回事呢,明明只烧写了kernel和文件系统呀
uboot可以在nand 也可以在nor里面
大部分CPU都支持从多种flash启动。对于2440,从nand启动时候,其nand前4K被拷贝到片内sram运行。
nor可以执行运行。
nand启动,uboot大于4K,当uboot起来后需要完成代码重定位。
总之uboot都会运行起来,然后uboot可以操作flash,即读取flash上的内核到内存中。
你分析一下uboot的环境变量bootcmd的内容