首页 > 代码库 > bootloader
bootloader
什么是BootLoader?
初始化开发板上主要硬件(时钟,内存,硬盘),把操作系统从硬盘拷贝到内存,然后让CPU跳转到内存中执行操作系统。
boot阶段干什么事?
1、关闭影响CPU正常执行的外设
--关闭看门狗(watchdog)
--关闭外设
2、初始化时钟
--为CPU倍频,为外设分频
3、串口驱动(便于调试)
4、初始化内存控制器DDRAM
--验证内存,往里面写一个值,然后再读出来
5、初始化硬盘, nand flash
--nand flash读驱动(从nand往外读数据)
loader阶段干什么事?
1、从硬盘指定地址加载kernel到内存指定地址
2、跳转到内存kernel所在的地址,执行
常用调试手段:
1、led点灯大法
2、串口调试,实现uart_getchar,uart_putchar,进一步实现stdio.h中的输入输出函数,(uart_puts,uart_gets,uart_scanf,uart_printf).
bootloader
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。