一个嵌入式系统 从软件角度来看分为三个层次:
序号 | 组成部分 | 描述 |
1 | 引导加载程序 | 包括固化在固件(Firmware )中的 boot 程序(可选)和 BootLoader 两大部分 |
2 | Linux内核 | 特定于嵌入式平台的定制内核 |
3 | 根文件系统 | 包括 系统命令 和 应用程序 |
一个同时装有 BootLoader、内核启动参数、内核映像和根文件系统映像的固态存储设备(比如 Nand Flash)的典型空间分配结构图:
建立交叉编译环境:
序号 | 平台 | 编译环境 |
1 | x86 | gcc |
2 | ARM | arm-linux-gcc |
uboot,全称为【Universal Boot Loader】,即 通用 Bootloader,是遵循GPL条款的开放代码项目。uboot 是德国DENX小组开发的用于多种嵌入式SOC(MIPS、x86、ARM、Xscale)的 BootLoader 程序。
【通用】有两层含义:
序号 | 描述 |
1 | 可以引导多种操作系统 :支持操作系统 Linux、NetBSD、VxWorks等 |
2 | 支持多种架构的CPU :PowerPC、MIPS、x86、ARM、XScale等 |