bootloader原理
刚开始学习u-boot,有一些问题,请求前辈大侠释疑!非常感谢,问题如下:
用于启动操作系统的Bootloader,一般都需要将内核“搬移”到SDRAM中去运行,然而在逻辑系统下,
程序直接烧写到片内FLASH(应该是NorFlash吧)执行,不需要做什么搬移。
我有这样两个想法,请您指教:
1、之所以要“搬移”到SDRAM中运行,主要是因为NorFlash的价格和单片Flash的存储空间与NandFlash相比,
劣势明显,一般都是使用NandFlash存储系统内核。然而,NandFlash不能够随机读写,只能按页读写,无法
运行内核。这是想法(1),不知是否如此,请高手指点迷津...........
2、如果我的内核编译以后足够小,或者是我的片内Flash(比如单片机用于存储程序的闪存)足够大,使得我的内核
可以放在这个片内Flash里面。这个时候我的bootloader是否就可以像单片机裸机程序上的“启动代码”那样,只做
一些简单的系统初始化工作,之后跳转到内核需要执行的第一个C函数,内核开始运行。这是想法(2),请高手指点
........
小弟初学,请求指点,期待探讨........
QQ:903937429