u-boot,全称 universal boot loader,是遵循gpl条款的开放源码项目。从fadsrom、8xxrom、ppcboot逐步发展演化而来。其源码目录、编译形式与linux内核很相似,事实上,不少u-boot源码就是相应的linux内核源程序的简化,尤其是一些设备的驱动程序,这从u-boot源码的注释中能体现这一点。
1 u-boot简介
u-boot不仅仅支持嵌入式linux系统的引导,当前,它还支持netbsd, vxworks, qnx, rtems, artos, lynxos嵌入式操作系统。其目前要支持的目标操作系统是openbsd, netbsd, freebsd,4.4bsd, linux, svr4, esix, solaris, irix, sco, dell, ncr, vxworks, lynxos, psos, qnx, rtems, artos。这是u-boot中universal的一层含义,另外一层含义则是u-boot除了支持powerpc系列的处理器外,还能支持mips、 x86、arm、nios、xscale等诸多常用系列的处理器。这两个特点正是u-boot项目的开发目标,即支持尽可能多的嵌入式处理器和嵌入式操作系统。就目前来看,u-boot对powerpc系列处理器支持最为丰富,对linux的支持最完善。其它系列的处理器和操作系统基本是在2002年11 月ppcboot改名为u-boot后逐步扩充的。从ppcboot向u-boot的顺利过渡,很大程度上归功于u-boot的维护人德国denx软件工程中心wolfgang denk[以下简称w.d]本人精湛专业水平和持着不懈的努力。当前,u-boot项目正在他的领军之下,众多有志于开放源码boot loader移植工作的嵌入式开发人员正如火如荼地将各个不同系列嵌入式处理器的移植工作不断展开和深入,以支持更多的嵌入式操作系统的装载与引导。
选择u-boot的理由:
① 开放源码;
② 支持多种嵌入式操作系统内核,如linux、netbsd, vxworks, qnx, rtems, artos, lynxos;
③ 支持多个处理器系列,如powerpc、arm、x86、mips、xscale;
④ 较高的可靠性和稳定性;
④ 较高的可靠性和稳定性;
⑤ 高度灵活的功能设置,适合u-boot调试、操作系统不同引导要求、产品发布等;
⑥ 丰富的设备驱动源码,如串口、以太网、sdram、flash、lcd、nvram、eeprom、rtc、键盘等;
⑦ 较为丰富的开发调试文档与强大的网络技术支持;
2 u-boot主要目录结构
* board 目标板相关文件,主要包含sdram、flash驱动;
* common 独立于处理器体系结构的通用代码,如内存大小探测与故障检测;
* cpu 与处理器相关的文件。如mpc8xx子目录下含串口、网口、lcd驱动及中断初始化等文件;
* driver 通用设备驱动,如cfi flash驱动(目前对intel flash支持较好)
* doc u-boot的说明文档;
* examples可在u-boot下运行的示例程序;如hello_world.c,timer.c;
* include u-boot头文件;尤其configs子目录下与目标板相关的配置头文件是移植过程中经常要修改的文件;
* lib_xxx 处理器体系相关的文件,如lib_ppc, lib_arm目录分别包含与powerpc、arm体系结构相关的文件;
* net 与网络功能相关的文件目录,如bootp,nfs,tftp;
* post 上电自检文件目录。尚有待于进一步完善;
* rtc rtc驱动程序;
* tools 用于创建u-boot s-record和bin镜像文件的工具;
3 u-boot支持的主要功能
u-boot可支持的主要功能列表
* 系统引导 支持nfs挂载、ramdisk(压缩或非压缩)形式的根文件系统
* 支持nfs挂载、从flash中引导压缩或非压缩系统内核;
* 基本辅助功能 强大的操作系统接口功能;可灵活设置、传递多个关键参数给操作系统,适合系统在不同开发阶段的调试要求与产品发布,尤
* linux支持最为强劲;
* 支持目标板环境参数多种存储方式,如flash、nvram、eeprom;
* crc32校验,可校验flash中内核、ramdisk镜像文件是否完好;
* 设备驱动 串口、sdram、flash、以太网、lcd、nvram、eeprom、键盘、usb、pcmcia、pci、rtc等驱动支持;
* 上电自检功能 sdram、flash大小自动检测;sdram故障检测;cpu型号;
* 特殊功能 xip内核引导;
意法半导体推出工业级传感器IIS2MDC磁力计和ISM303DAC电子罗盘
单片机近十年有哪些技术创新值得我们关注?
电信业改革进行时 预计上半年发放虚拟运营商牌照
自动驾驶量产路在何方
汽车连接器有哪些要求
U-Boot结构功能介绍
安富利PicoZed视频开发套件,超大礼包仅售$1500
实现modbus plc设备数据上传云平台监控并同步转HJ212协议上传环保局平台
智能时代下的智能家电能满足人们的需求吗
三星Galaxy Z Flip渲染图曝光采用了骁龙855平台和3300mAh电池
新日本无线成功开发出射频功率放大器模块NJG1330
信号完整性(SIPI)学习之传输线的介质损耗
一种32位Arm架构的微处理器详细介绍
生物医用材料已成为各国科学家进行研究和开发的热点
压力变送器标定系统的组成及原理
智慧变电站三维可视化数字孪生系统解决方案
小米mix2最新设计图稿,全息屏不是梦想
荣耀畅玩8C的续航能力到底有多强
情人节,DIY一个“心”型LED流水灯表白吧!
超宽带认知无线电的关键技术