1. U-boot的起源
U-Boot 是 Das U-Boot 的简称,其含义是 Universal Boot Loader,是遵循 GPL 条款的开放源码项目。最早德国 DENX 软件工程中心的 Wolfgang Denk 基于 8xxROM 和 FADSROM的源码创建了 PPCBoot 工程项目,此后不断添加处理器的支持。而后,Sysgo Gmbh 把PPCBoot 移植到 ARM 平台上,创建了 ARMBoot 工程项目。最终,以 PPCBoot 工程和ARMBoot 工程为基础,创建了 U-Boot 工程,2002 年 12 月 17 日第一个版本 U-Boot-0.2.0,发布,同时 PPCBoot 和 ARMBoot 停止维护。
而今,U-Boot 作为一个主流、通用的 BootLoader,成功地被移植到包括 PowerPC、ARM、X86 、MIPS、NIOS、XScale 等主流体系结构上的百种开发板,成为功能最多、灵活性最强,并且开发最积极的开源 BootLoader。目前。U-Boot 仍然由 DENX 的 Wolfgang Denk 维护。
2 U-boot 的开发情况和资源
最早 U-boot 的版本号是由 X.Y.Z 来表示的,从 0.2.0 一直发展到 1.3.4。之后便开始使用年份加月份的表示方法,从 2008.11 到现在的 2010.3 平均每 3 个多月出一个新版本。每次代码的结构和定义都会有一些修正和改进,其代码越来越规整,功能越来越强,但是移植的难度反而越来越小,需要修改的地方越来越少。 U-boot不仅有主线版本,在 U-boot的Git代码仓库中还有各个CPU构架的分支版本,这些分支会在一定的时候将修改汇入主线。