BOOTLOADER 之我见

篇只是一个简短的记录,记录一下对Bootloader的一些粗浅认识。


1.Bootloader真正核心的代码不过几百行汇编完成的工作高度依赖于硬件和将要运行的系统。

a.对于硬件,将硬件置于合适的工作状态;如ARM,关闭看门狗,关闭中断,初始化内存接口等

b.检测硬件的类别和数量,保存在合适的位置。为被引导软件服务。

c.搬运代码到合适的地方,并交接控制权。


2.为了调试或者系统升级的方便,Bootloader增加了很多功能。这些功能使bootloader的复杂度大大增加,也使得系统使用更加便利,但不是核心代码。

a.如通讯类的,串口通讯,网络通讯;

b.如工具类的,格式化Flash,烧写Flash校验烧写的代码,硬件检测和控制等。


3.BootLoader稳定性可靠性要求颇高,无外乎采用一些较为保守的策略,求稳求可靠。性能次之。

a.很多外设工作都采用查询方式,而非中断方式。如UART采用查询的方式;

b. 硬件工作在基本模式,而非扩展模式。如CPU的速度一般设置为可靠的工作速度,而非最大速度

c.选用简单的编程模型和事务处理模型。


4.Bootloader和硬件高度相关,一个系统平台和另外一个系统平台差异很大这里主要指Bootloader完成的核心任务。所以,理解Bootloader需要从硬件出发理解最本质最核心的东西。至于Bootloader扩展功能,如网络通讯等,并不是核心的东西。那部分只要驱动移植, 就很容易从一个平台移植到另外一个平台。



  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值