bootloader程序比较及分析.pdf

  1. 1、本文档共22页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
一. BootLoader 简介 在专用的嵌入式板子运行GNU/Linux 系统已经变得越来越流行。一个嵌入式Linux 系统从软件的角度看通常可 以分为四个层次: 1、 引导加载程序。包括固化在固件(firmware) 中的boot 代码(可选) ,和BootLoader 两大部分。 2、 Linux 内核。特定于嵌入式板子的定制内核以及内核的启动参数。 3、 文件系统。包括根文件系统和建立于Flash 内存设备之上文件系统。通常用ramdisk 来作为rootfs 。 4、 用户应用程序。特定于用户的应用程序。有时在用户应用程序和内核层之间可能还会包括一个嵌入式图形 用户界面。常用的嵌入式GUI 有:MicroWindows 和MiniGUI 懂。 引导加载程序是系统加电后运行的第一段软件代码。PC 机中的引导加载程序由BIOS(其本质就是一段固件程序) 和位于硬盘MBR 中的OS BootLoader (比如,LILO 和GRUB 等)一起组成。BIOS 在完成硬件检测和资源分配后, 将硬盘MBR 中的BootLoader 读到系统的RAM 中,然后将控制权交给OS BootLoader 。BootLoader 的主要运行任务 就是将内核映象从硬盘上读到 RAM 中,然后跳转到内核的入口点去运行,也即开始启动操作系统。 而在嵌入式系统中,通常并没有像BIOS 那样的固件程序(注,有的嵌入式CPU 也会内嵌一段短小的启动程序), 因此整个系统的加载启动任务就完全由BootLoader 来完成。比如在一个基于ARM7TDMI core 的嵌入式系统中,系 统在上电或复位时通常都从地址0处开始执行,而在这个地址处安排的通常就是系统的BootLoader 程序。 简单地说,BootLoader 就是在操作系统内核运行之前运行的一段小程序。通过这段小程序,我们可以初始化硬 件设备、建立内存空间的映射图,从而将系统的软硬件环境带到一个合适的状态,以便为最终调用操作系统内核准 备好正确的环境。 通常,BootLoader 是严重地依赖于硬件而实现的,特别是在嵌入式世界。因此,在嵌入式世界里建立一个通用 的BootLoader 几乎是不可能的。尽管如此,我们仍然可以对BootLoader 归纳出一些通用的概念来,以指导用户特 定的BootLoader 设计与实现。 二、常见bootloader 介绍 1.U-BOOT 介绍 : uboot 是一个庞大的公开源码的软件。他支持一些系列的 arm 体系,包含常见的外设的驱动,是一个功能强大 的板极支持包。U-Boot 是由开源项目PPCBoot 发展起来的,ARMboot 并入了PPCBoot ,和其他一些arch 的Loader 合称U-Boot 。2002 年12 月17 日第一个版本U-Boot-0.2.0 发布,同时PPCBoot 和ARMboot 停止维护。 U-Boot 自发布以后已更新6 次,必威体育精装版版本为U-Boot-1.1.1,U-Boot 的支持是持续性的。其发布网址为: /projects/u-boot/ U-Boot 支持的处理器构架包括PowerPC (MPC5xx ,MPC8xx ,MPC82xx ,MPC7xx ,MPC74xx ,4xx) , ARM (ARM7 ,ARM9 ,StrongARM,Xscale ),MIPS (4Kc ,5Kc),x86 等等, U-Boot (Universal Bootloader )从名字就 可以看出,它是在GPL 下资源代码最完整的一个通用Boot Loader 。 U-Boot 提供两种操作模式:启动加载(Boot loading )模式和下载(Downloading )模式,并具有大型Boot Loader 的全部功能。主要特性为: - SCC/FEC 以太网支持 - BOOTP/TFTP 引导 - IP ,MAC 预置功能 - 在线读写FLASH ,DOC, IDE ,IIC ,EEROM ,RTC - 支持串行口kermit ,S-record 下载代码 - 识别二进制、ELF32 、pImage 格式的Image ,对Linux 引导有特别的支持 -

文档评论(0)

yigang0925 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档