常见bootloader

常见bootloader

Redboot

  Redboot是Redhat公司随eCos发布的一个BOOT方案,是一个开源项目。
  当前 Redboot 的最新版本是Redboot-2.0.1,Redhat公司将会继续支持该项目。
   Redboot 支持的处理器构架有ARM,MIPS,MN10300,PowerPC, Renesas SHx,v850,x86等,是一个完善的 嵌入式系统 Boot Loader。
   Redboot 是在ECOS的基础上剥离出来的,继承了ECOS的简洁、轻巧、可灵活配置、稳定可靠等品质优点。它可以使用X-modem或Y-modem协议经由串口下载,也可以经由以太网口通过BOOTP/DHCP服务获得IP参数,使用TFTP方式下载程序 映像文件 ,常用于调试支持和 系统初始化 (Flash下载更新和网络启动)。 Redboot 可以通过串口和以太网口与GDB进行通信,调试 应用程序 ,甚至能中断被GDB运行的应用程序。 Redboot 为管理FLASH映像,映像下载,Redboot配置以及其他如串口、 以太网 口提供了一个交互式命令行接口,自动启动后,REDBOOT用来从TFTP服务器或者从Flash下载 映像文件 加载系统的引导 脚本文件 保存在Flash上。当前支持 单板机 的移植版特性有:
  - 支持ECOS, Linux操作系统 引导
  - 在线读写Flash
  - 支持 串行口 kermit,S-record下载代码
  - 监控(minitor)命令集:读写I/O,内存,寄存器、 内存、外设测试功能等
   Redboot 是标准的 嵌入式 调试和引导解决方案,支持几乎所有的处理器构架以及大量的外围硬件接口,并且还在不断地完善过程中。

ARMboot

  ARMboot是一个ARM平台的开源 固件 项目,它特别基于PPCBoot,一个为PowerPC平台上的系统提供类似功能的姊妹项目。鉴于对PPCBoot的严重依赖性,已经与PPCBoot项目合并,新的项目为 U-Boot
  ARMboot发布的最后版本为ARMboot-1.1.0,2002年ARMboot终止了维护。
  ARMboot支持的处理器构架有StrongARM ,ARM720T ,PXA250 等,是为基于ARM或者StrongARM CPU的 嵌入式系统 所设计的。
  ARMboot的目标是成为通用的、容易使用和移植的引导程序,非常轻便地运用于新的平台上。ARMboot是GPL下的ARM 固件 项目中唯一支持Flash闪存,BOOTP、DHCP、TFTP网络下载,PCMCLA寻线机等多种类型来引导系统的。特性为:
  -支持多种类型的FLASH
  -允许 映像文件 经由BOOTP、DHCP、TFTP从 网络传输
  -支持 串行口 下载S-record或者binary文件
  -允许内存的显示及修改
  -支持 jffs2 文件系统等
  Armboot对S3C44B0板的移植相对简单,在经过删减完整代码中的一部分后,仅仅需要完成初始化、串口收发数据、启动计数器和FLASH操作等步骤,就可以下载引导uClinux 内核 完成板上系统的加载。总得来说,ARMboot介于大、小型Boot Loader之间,相对轻便,基本功能完备,缺点是缺乏后续支持。

U-Boot

  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的支持是持续性的。
  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引导有特别的支持
  -监控(minitor)命令集:读写I/O,内存,寄存器、内存、外设测试功能等
  - 脚本 语言支持(类似BASH 脚本
  -支持WatchDog,LCD logo,状态指示功能等
  U-Boot的功能是如此之强大,涵盖了绝大部分处理器构架,提供大量外设驱动,支持多个文件系统,附带调试、 脚本 、引导等工具,特别支持Linux,为板级移植做了大量的工作。U-Boot1.1.1版本特别包含了对SA1100和44B0芯片的移植,所以44B0移植主要是针对Board 的移植,包括FLASH、内存配置以及串口 波特率 等等。U-Boot的完整功能性和后续不断的支持,使系统的升级维护变得十分方便。

Blob

  Blob(Boot Loader Object)是由Jan-Derk Bakker and Erik Mouw发布的,是专门为StrongARM 构架下的LART设计的Boot Loader。
  Blob的最后版本是blob-2.0.5。
  Blob支持SA1100的LART主板,但用户也可以自行修改移植。
  Blob也提供两种工作模式,在启动时处于正常的启动加载模式,但是它会延时 10 秒等待终端用户按下 任意键 而将 Blob 切换到下载模式。如果在 10 秒内没有用户按键,则 Blob 继续启动 Linux  内核 。其基本功能为:
  初始化硬件(CPU速度, 存储器 ,中断,RS232串口)
  -引导Linux内核并提供ramdisk
  - 给LART下载一个 内核 或者ramdisk
  -给FLASH片更新内核或者ramdisk
  -测定存储配置并通知内核
  -给 内核 提供一个命令行
  Blob功能比较齐全,代码较少,比较适合做修改移植,用来引导Liunx,目前大部分S3C44B0板都用Blob修改移植后来加载uClinux。

Bios-lt

  Bios-lt是专门支持三星(Samsung)公司ARM构架处理器S3C4510B的Loader,可以设置CPU/ROM/SDRAM/EXTIO,管理并烧写FLASH,装载引导uClinux内核。这是国内工程师申请GNU通用公共许可发布的。
  Bios-lt的最新版本是Bios-lt-0.74,另外还提供了S3C4510B的一些外围驱动。

Bootldr

  Bootldr是 康柏 (Compaq)公司发布的,类似于compaq iPAQ Pocket PC,支持SA1100芯片。它被推荐用来引导Llinux,支持串口Y-modem协议以及jffs文件系统。
  Bootldr的最后版本为Bootldr-2.19。

vivi

  vivi是韩国mizi 公司开发的bootloader, 适用于ARM9处理器。Vivi有两种工作模式:启动加载模式和下载模式。启动加载模式可以在一段时间后(这个时间可更改)自行启动 linux内核 ,这是vivi的默认模式。在下载模式下,vivi为用户提供一个命令行接口,通过接口可以使用vivi提供的一些命令,如下:
  命令 
  功能 
  Load 把二进制文件载入Flash或RAM 
  Part 操作MTD分区信息。显示、增加、删除、复位、保存MTD分区 
  Param 设置参数 
  Boot 启动系统 
  Flash 管理Flash,如删除Flash的数据 
  vivi代码分析 vivi的代码包括arch,init,lib,drivers和include等几个目录,共200多条文件。 
  Vivi主要包括下面几个目录: 
  arch:此目录包括了所有vivi支持的 目标板 的子目录,例如s3c2410目录。 
  drivers:其中包括了引导 内核 需要的设备的驱动程序(MTD和串口)。
  MTD目录下分map、nand和nor三个目录。 
  init:这个目录只有main.c和version.c两个文件。和普通的C程序一样,vivi将从 main函数 开始执行。 
  lib:一些平台公共的接口代码,比如time.c里的udelay()和mdelay()。
  include:头文件的公共目录,其中的s3c2410.h定义了这块处理器的一些寄存器。Platform/smdk2410.h定义了与 开发板 相关的资源配置参数,我们往往只需要修改这个文件就可以配置 目标板 的参数,如 波特率 、引导参数、 物理内存 映射等。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值