- 1、本文档共34页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第七章 Agenda 7.1 Bootloader 简介 7.2 常用Bootloader 的介绍 7.3 Bootloader 的烧写和使用 第七章 Agenda 7.1 Bootloader 简介 7.2 常用Bootloader 的介绍 7.3 Bootloader 的烧写和使用 7.1 Bootloader 简介 7.1.1 Bootloader 的概念 7.1.2 Bootloader 的启动 7.1.3 Bootloader 的种类 7.1.1 Bootloader 的概念 引入:对于计算机系统来说,从开机上电到操作系统启动需要一个引导过程。嵌入式Linux系统同样离不开引导程序,这个引导程序就叫做BootLoader。 对比:回忆一下PC的体系结构我们可以知道,PC机中的引导加载程序由BIOS(其本质就是一段固件程序)和位于硬盘MBR中的引导程序一起组成。 BIOS在完成硬件检测和资源分配后,将硬盘MBR中的引导程序读到系统的RAM中,然后将控制权交给引导程序。 引导程序的主要运行任务就是将内核映象从硬盘上读到RAM中然后跳转到内核的入口点去运行,也即开始启动操作系统。 7.1.1 Bootloader 的概念 而在嵌入式系统中,通常并没有像BIOS那样的固件程序。 因此整个系统的加载启动任务就完全由BootLoader来完成. 比如在一个基于ARM7TDMI core的嵌入式系统中,系统在上电或复位时都从地址0始执行.而在这个地址处安排的通常就是系统的BootLoader程序。 7.1.1 Bootloader 的概念 Bootloader的概念和功能 BootLoader是一段汇编代码,存放在MBR中,它的主要作用就是将操作系统启动代码读入内存。 从功能上看,Bootloader就是在操作系统内核或用户应用程序运行之前运行的一段小程序。通过这段小程序可以初始化硬件设备、建立内存空间的映射图,从而将系统的软硬件环境带到一个合适的状态,以便为最终调用操作系统内核或用户应用程序准备好正确的环境。 7.1.1 Bootloader 的概念 Bootlaoder的不统一性/不通用性 通常,BootLoader 是依赖于硬件而实现的,特别是在嵌入式领域,为嵌入式系统建立一个通用的BootLoader是很困难的。当然,我们可以归纳出一些通用的概念来,以便我们了解特定BootLoader的设计与实现。当前在嵌入式Linux系统中,有了一些流行和通用的Bootloader框架。 现实开发中,我们都是采用现有的BootLoader进行修改 Vivi,blob,u-boot是最常见的,它们都是开源的 Vivi是三星公司的,我们的实验板子就是使用的它 7.1.2 Bootloader 的启动 嵌入式Linux系统也是通过Bootloader引导启动的。一上电,就要执行Bootloader来初始化系统。 系统加电或复位后,所有CPU都会从某个地址开始执行,具体的地址值是由处理器设计决定的。 比如,基于 ARM7TDMI core 的 CPU 在复位时通常都从地址 0取它的第一条指令。而基于ARM处理器构建的嵌入式系统通常都有某种类型的固态存储设备(比如:ROM、EEPROM 或 FLASH 等)被映射到这个预先安排的地址上。因此在系统加电后,CPU将首先执行Bootloader程序。 7.1.2 Bootloader 的启动 用户可以利用串口和Bootloader进行交互 Bootloader多数是两阶段的启动过程 第一个启动阶段是和硬件平台相关的,大都采用汇编程序编写 第二个启动阶段是和硬件平台无关的,大都采用C语言编写。 大多数Bootloader都包含两种不同的操作模式:本地加载模式和远程下载模式。 Bootloader-启动举例 Bootloader-启动举例 Bootloader-启动举例 7.1.2 Bootloader 的启动 网络启动方式 7.1.2 Bootloader 的启动 诸如u-boot的BootLoader本身集成网络功能支持 这种方式开发板不需要配置较大的存储介质,跟无盘工作站有点类似。但是使用这种启动方式之前,需要把BootLoader安装到板上的EPROM或者Flash中。BootLoader通过以太网接口远程下载Linux内核映象或者文件系统。 BootLoader下载文件一般都使用TFTP网络协议,还可以通过DHCP的方式动态配置IP地址。 7.1.2 Bootloader 的启动 磁盘启动方式 传统的Linux系统运行在台式机或者服务器上,这些计算机一般都使用BIOS引导,并且使用磁盘作为存储介质。 Linux传统上是通过L
您可能关注的文档
- 四川大学电子信息学院信息安全理论与技术 IDS.pdf
- 四川大学电子信息学院信息安全理论与技术 安全服务及功能配置.pdf
- 四川大学电子信息学院信息安全理论与技术 安全机制.pdf
- 四川大学电子信息学院信息安全理论与技术 防火墙.pdf
- 四川大学电子信息学院信息安全理论与技术 访问控制.pdf
- 四川大学电子信息学院信息安全理论与技术 个人计算机配置.pdf
- 四川大学电子信息学院信息安全理论与技术 黑客技术.pdf
- 四川大学电子信息学院信息安全理论与技术 技术概述.pdf
- 四川大学电子信息学院信息安全理论与技术 鉴别技术.pdf
- 四川大学电子信息学院信息安全理论与技术 漏洞扫描.pdf
- 局机关2025年上半党支部工作总结.docx
- 《党组讨论和决定党员处分事项工作程序规定》交流发言:以《规定》为纲,扎实推进纪检监察工作高质量发展.docx
- 市政府办公室关于学习教育进展情况汇报.docx
- 市委办公室在学习教育督导推进会上的汇报发言.docx
- 学习《党组讨论和决定党员处分事项工作程序规定》交流发言.docx
- 学校开展作风建设专题汇报会上的交流发言.docx
- 市政府办公室在学习教育督导座谈会上的汇报发言.docx
- 严守党纪红线,强化执纪担当——在市纪委理论学习中心组专题学习研讨会上的发言.docx
- 2025年党员领导干部学习《党政机关厉行节约反对浪费条例》研讨会交流发言 (2).docx
- 市人大办公室在学习教育督导座谈会上的汇报发言.docx
最近下载
- 美国fda生产过程(工艺)验证总则指南中英文版.doc VIP
- 成都理工大学2020-2021学年第2学期《环境监测》期末考试试卷及标准答案.docx
- 2024年江苏省无锡市中考英语真题卷(含答案与解析).docx VIP
- 年产水性油墨、凹版塑料环保油墨4500 吨、水性涂料500吨建设项目环评(2021年新版环评)环境影响报告表.pdf VIP
- fda美国食品药物管理局工艺验证指南英文版).doc VIP
- 金属非金属露天矿山建设项目安全设施竣工验收表.pdf VIP
- 单位员工网络安全培训.pptx VIP
- PQE试用期述职报告.pptx VIP
- 《GBT 30130-2023胶版印刷纸》最新解读.pptx
- GJB9001C:2017研发一整套资料模板(共348页).pdf VIP
文档评论(0)