Linux学习笔记5 - U-Boot概述

1.简介

  • U-BootUniversal Bootloader简称(bootloader的一种),是一个遵循GPL条款的开源源码项目。其从FADSRROM,8xxROM,PPCBOOT逐步发展演化而来。
    其源码目录,编译形式与Linux内核极相似,事实上,不少u-boot源码就是相应的Linux内核源码程序的简化。

2.特点

  • 开放源码
  • 支持多种嵌入式操作系内核,诸如:Linux,VxWorks等。
  • 支持多个处理器(平台)系列,诸如:PowerPC,ARM,x86,MIPS等。
  • 拥有较高的可靠性与稳定性。
  • 高度灵活的功能设置,适合U-Boot调试,OS不同引导需求和发布。
  • 拥有丰富的设备驱动源码,诸如:串口,以太网,FLASH等。
  • 较为丰富的开发调试文档和强大的网络技术支持。

3.主要功能

  • 支持的功能列表
    • 系统引导,支持NFS挂载,RAM DISK(压缩或非压缩)形式的根文件系统。
    • 基本辅助功能,强大的操作系统接口功能,可灵活设置,传递多个关键参数给操作系统;支持目标板环境参数的多种存储方式;支持CRC32校验。
    • 设备驱动,串口,以太网,FLASHLCD等。
    • 上电自检功能,SDRAM,FLASH大小自动检测,SDRAM故障检测,CPU型号。
    • 特殊功能,XIP内核引导。

4.U-Boot源码

Linux学习笔记5 - U-Boot概述_第1张图片
图片引用地址

5.U-Boot移植步骤

  • 1.配置目标板类型(makefile文件)
  • 2.修改程序链接地址
  • 3.修改中断配置
  • 4.修改启动代码(假若是从NandFlash加载代码启动)
  • 5.修改内存配置
  • 6.添加NandFlash读函数
  • 7.NandFlash初始化函数
  • 8.修改GPIO配置
  • 9.提供NandFlash相关宏定义
  • 10.注册NandFlash设备
  • 11.设置NandFlash环境

6.启动方式

  • 1.启动加载模式
    • 亦称"自主"模式,上电后,bootloader直接操作性同加载到RAM中运行,不需要用户介入。
      此种模式也是嵌入式产品通用(正常)模式。
  • 2.下载加载模式
    • 此模式下,设备上电后,bootloader将通过串口/网络连接等方式,将从远端设备下载文件(内核映像&根文件系统映像),文件先被bootloader保存在设备的RAM中,
      然后再被bootloader写入到FLASH等存储设备中,此种模式在系统更新时使用。

参考文献:《Linux嵌入式应用程序开发标准教程(第2版)》

你可能感兴趣的:(Linux学习笔记,linux,学习,运维)