=>Linux-Uboot学习总目录<=
=>Linux-Kernel学习总目录<=
=>Linux-Rootfs学习总目录<=
一、U-boot简介
(Universal Boot Loader,U-Boot
)全称:通用引导加载程序。遵循GPL条款的从FADSROM、8xxROM、PPCBOOT逐步发展演化而来的 开放源码项目。
U-Boot
,是一个主要用于嵌入式系统的引导加载程序,可以支持多种不同的计算机系统结构,其主要的作用为:引导系统的启动。目前,U-Boot不仅支持Linux系统的引导,还支持NetBSD, VxWorks, QNX, RTEMS, ARTOS, LynxOS, android等多种嵌入式操作系统。
二、U-boot的特性
- 开放:开放的源代码 多平台;
- 支持多种嵌入式操作系统,如Linux、NetBSD、android等;
- 生态:有丰富的设备驱动源码,如以太网、SDRAM、LCD等,同时也具有丰富的开发文档。
三、U-boot 的资料地址
U-boot的源码获取
- 源码下载地址
- U-boot文档描述
- github仓库:
git clone https://github.com/u-boot/u-boot
四、U-boot 的作用
- U-boot本质上就是一个单片机程序,所以对应不同的硬件设计和CPU。U-BOOT必须按需修改。
- U-boot用来引导启动操作系统(也是程序)
- U-boot的官方网址: SourceCode < U-Boot < DENX
- U-boot其实是个很庞大的单片机工程,就为了干一件事:引导加载Linux
- u-boot一般从FLASH或SD读出内核可执行程序放到SRAM里,然后执行内核,在SRAM里面。
- u-boot为了实现终极功能,必须具备的基本功能:
读写FLASH或SD卡
写SDRAM
从SDRAM中启动内核
初始化时钟
初始化串口甚至网口