资料介绍
Bootloader是什么Bootloader的概念和引入及启动方式等详细资料概述。
一、Bootloader 的引入
从前面的硬件实验可以知道,系统上电之后,需要一段程序来进行初始化:关闭WATCHDOG、改变系统时钟、初始化存储控制器、将更多的代码复制到内存中等等。如果它能将操作系统内核(无论从本地,比如Flash;还是从远端,比如通过网络)复制到内存中运行,就称这段程序为Bootloader。
简单地说,Bootloader 就是这么一小段程序,它在系统上电时开始执行,初始化硬件设备、准备好软件环境,最后调用操作系统内核。
可以增强 Bootloader 的功能,比如增加网络功能、从PC 上通过串口或网络下载文件、烧写文件、将Flash 上压缩的文件解压后再运行等──这就是一个功能更为强大的Bootloader,也称为Monitor。实际上,在最终产品中用户并不需要这些功能,它们只是为了方便开发。
Bootloader 的实现严重依赖于具体硬件,在嵌入式系统中硬件配置千差万别,即使是相同的CPU,它的外设(比如Flash)也可能不同,所以不可能有一个Bootloader 支持所有的CPU、所有的电路板。即使是支持CPU 架构比较多的U-Boot,也不是一拿来就可以使用的(除非里面的配置刚好与你的板子相同),需要进行一些移植。
二、 Bootloader 的启动方式
CPU 上电后,会从某个地址开始执行。比如MIPS 结构的CPU 会从0xBFC00000 取第一条指令,而ARM 结构的CPU 则从地址0x0000000 开始。嵌入式单板中,需要把存储器件ROM或Flash 等映射到这个地址,Bootloader 就存放在这个地址开始处,这样一上电就可以执行。
在开发时,通常需要使用各种命令操作 Bootloader,一般通过串口来连接PC 和开发板,可以在串口上输入各种命令、观察运行结果等。这也只是对开发人员才有意义,用户使用产品时是不用接串口来控制Bootloader 的。从这个观点来看,Bootloader 可以分为两种操作模式(Operation Mode):
(1)启动加载(Boot loading)模式。
上电后,Bootloader 从板子上的某个固态存储设备上将操作系统加载到RAM 中运行,整个过程并没有用户的介入。产品发布时,Bootloader 工作在这种模式下。
(2)下载(Downloading)模式。
在这种模式下,开发人员可以使用各种命令,通过串口连接或网络连接等通信手段从主机(Host)下载文件(比如内核映像、文件系统映像),将它们直接放在内存运行或是烧入Flash 类固态存储设备中。
板子与主机间传输文件时,可以使用串口的xmodem/ymodem/zmodem 协议,它们使用简单,只是速度比较慢;还可以使用网络通过tftp、nfs 协议来传输,这时,主机上要开启tftp、nfs服务;还有其他方法,比如USB 等。
像 Blob 或U-Boot 等这样功能强大的Bootloader 通常同时支持这两种工作模式,而且允许用户在这两种工作模式之间进行切换。比如,U-Boot 在启动时处于正常的启动加载模式,但是它会延时若干秒(这可以设置)等待终端用户按下任意键而将U-Boot 切换到下载模式。如果在指定时间内没有用户按键,则U-Boot 继续启动Linux 内核。
- MCU Bootloader总结
- 嵌入式 Linux 启动流程和 bootloader 介绍
- 几种MCU bootLoader的实现方案
- BootLoader与Linux内核的参数传递详细资料说明 13次下载
- emmc启动烧写的详细资料说明 26次下载
- 嵌入式操作系统中BootLoader的详细资料说明
- ESP8266二级Bootloader跳转测试的详细资料合集免费下载 12次下载
- Bootloader的详细资料分析免费下载 42次下载
- Bootloader是什么Bootloader的介绍和过程详细解 45次下载
- 启动代码与bootloader有什么区别 10次下载
- 移植Bootloader的过程总结资料说明 9次下载
- 嵌入式教程之Bootloader的详细资料说明 5次下载
- Laplace变换的PID整定与引入的详细资料概述 6次下载
- 基于ARM的Bootloader启动流程研究 10次下载
- 基于ARM核的Bootloader代码的分析与设计
- 如何才能将Bootloader和Application关联起来 426次阅读
- 图解基于UDS的Flash BootLoader 1019次阅读
- ARM处理器如何编写Bootloader 731次阅读
- 单片机BootLoader与APP如何合并 1292次阅读
- 如何实现简单的bootloader功能 2335次阅读
- STM32系统bootloader的应用有哪些 5354次阅读
- 嵌入式Linux启动时间优化的秘密之五-Bootloader 2743次阅读
- 详谈嵌入式之Bootloader 5956次阅读
- 开关电源的正激变换器基本工作原理及元器件如何选择等详细资料概述 1.3w次阅读
- PLC常用基本环节梯形图和详细文字说明详细资料概述 8966次阅读
- AVR的bootloader的设置步骤教程及注意事项 6676次阅读
- 详解bootloader的执行流程与ARM Linux启动过程分析 1w次阅读
- 微控制器的bootloader程序的运行和使用 8361次阅读
- pic18单片机在BootLoader中的应用 895次阅读
- 解锁BootLoader 3579次阅读
下载排行
本周
- 1TC358743XBG评估板参考手册
- 1.36 MB | 330次下载 | 免费
- 2开关电源基础知识
- 5.73 MB | 6次下载 | 免费
- 3100W短波放大电路图
- 0.05 MB | 4次下载 | 3 积分
- 4嵌入式linux-聊天程序设计
- 0.60 MB | 3次下载 | 免费
- 5基于FPGA的光纤通信系统的设计与实现
- 0.61 MB | 2次下载 | 免费
- 6基于FPGA的C8051F单片机开发板设计
- 0.70 MB | 2次下载 | 免费
- 751单片机窗帘控制器仿真程序
- 1.93 MB | 2次下载 | 免费
- 8基于51单片机的RGB调色灯程序仿真
- 0.86 MB | 2次下载 | 免费
本月
- 1OrCAD10.5下载OrCAD10.5中文版软件
- 0.00 MB | 234315次下载 | 免费
- 2555集成电路应用800例(新编版)
- 0.00 MB | 33564次下载 | 免费
- 3接口电路图大全
- 未知 | 30323次下载 | 免费
- 4开关电源设计实例指南
- 未知 | 21548次下载 | 免费
- 5电气工程师手册免费下载(新编第二版pdf电子书)
- 0.00 MB | 15349次下载 | 免费
- 6数字电路基础pdf(下载)
- 未知 | 13750次下载 | 免费
- 7电子制作实例集锦 下载
- 未知 | 8113次下载 | 免费
- 8《LED驱动电路设计》 温德尔著
- 0.00 MB | 6653次下载 | 免费
总榜
- 1matlab软件下载入口
- 未知 | 935054次下载 | 免费
- 2protel99se软件下载(可英文版转中文版)
- 78.1 MB | 537796次下载 | 免费
- 3MATLAB 7.1 下载 (含软件介绍)
- 未知 | 420026次下载 | 免费
- 4OrCAD10.5下载OrCAD10.5中文版软件
- 0.00 MB | 234315次下载 | 免费
- 5Altium DXP2002下载入口
- 未知 | 233046次下载 | 免费
- 6电路仿真软件multisim 10.0免费下载
- 340992 | 191185次下载 | 免费
- 7十天学会AVR单片机与C语言视频教程 下载
- 158M | 183278次下载 | 免费
- 8proe5.0野火版下载(中文版免费下载)
- 未知 | 138040次下载 | 免费
评论
查看更多