7第五章bootloader.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
7第五章bootloader

第五章 Bootloader 中国传媒大学 信息工程学院 2010学年秋季 苗方 Bootloader的概念 嵌入式系统的组成 开源的Bootloader Bootloader的主要功能 Bootloader在Flash上存储位置 Bootloader的模式 Bootloader的组成部分 U-Boot Bootloader的任务(1) Bootloader的任务(2) UBoot的代码组成(1) UBoot的代码组成(2) UBoot的启动过程 UBoot的启动过程 U-Boot启动过程 U-Boot启动过程 烧写Bootloader Bootloader * * Bootloader BootLoader就是在操作系统内核或用户应用程序运行之前运行的一段小程序。通过这段小程序,我们可以初始化硬件设备、建立内存空间的映射图,从而将系统的软硬件环境带到一个合适的状态,以便为最终调用操作系统内核或用户应用程序准备好正确的环境。 Bootloader Boot Loader 底层 顶层 Bootloader No Yes No Loader from the LART hardware project No BLOB Yes Yes Yes eCos-based loader Yes RedBoot Yes Yes Yes Universal loader Yes U-boot No No Yes Loads Linux from DOS No Loadlin No No Yes GNU’s successor to LILO No GRUB No No Yes Main disk bootloader for Linux No LILO PowerPC ARM x86 Description Monitor Bootloader Bootloader 初始化系统在启动阶段必需的硬件设备; 准备后续软件系统运行所需的软件环境,如复制一部分代码到RAM中等; 向内核传递启动参数; [可选] 配置系统各种参数; [可选] 支持各种协议来下载Bootloader、内核、文件系统等; [可选] 支持在线调试; 引导内核启动; Bootloader 一般,在嵌入式系统中,Bootloader和内核、文件系统都是烧写在Flash、ROM等非易失性存储器上的; 文件系统 内核 启动参数 Bootloader |起始地址 |结束地址 Bootloader 正常启动(loading)模式:这种模式也称为“自主”(Autonomous)模式,也即BootLoader从目标机上的某个固态存储设备上将操作系统加载到RAM中运行,整个过程并没有用户的介入。这种模式是BootLoader的正常工作模式。产品发布时工作在这种模式下。 下载(downloading)模式:在这种模式下 目标机上的BootLoader将通过串口连接或网络连接等通信手段从主机下载文件,比如:下载应用程序、数据文件、内核映像等.从主机下载的文件通常首先被BootLoader保存到目标机的RAM中然后再被BootLoader写到目标机上的固态存储设备中。BootLoader的这种模式通常在系统更新时使用。 Bootloader 通常Bootloader需要加载到RAM中运行,因此需要一个加载程序将真正的Bootloader程序加载到RAM,并使之运行。 第一阶段(Flashloader) 汇编写成、代码小、Flash上运行,跳转到bootloader 第二阶段(真正的Bootloader) C语言,代码量大,RAM上运行,跳转到内核 Bootloader 以U-boot为例介绍bootloader:Universal Bootloader U-boot是在PPC-Boot基础上进化而来的一个开发源码的BootROM程序。 采用了高度模块化的编程方式 /projects/u-boot Bootloader 初始化处理器以及外设的硬件资源配置,CPU片内和片外设备,例如正确配置SDRAM控制器 初始化 I/O 芯片,可能有的设备: 串口,报告Bootloader成功/失败 网络或其他接口,准备引导操作系统 执行系统自检,报告检测结果 通过用户命令行提供特定应用程序 Bootloader 使用TFTP协议从网口接收(或者xmodem协议从串口接收)操作系统镜像文件到RAM 将镜像烧写到flash中,重启后负责找到该镜像、解压到RAM中,并跳转到解压位置处执行 直接跳转到RAM处执行该镜像 Bootloader board:与目标板相关的代码 cpu:与cpu相关的代码 include:头文件 common:通用代码 net:网络相关代码 fs:文件系统相关代码 disk:磁

文档评论(0)

qwd513620855 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档