Bootloader
来源:互联网 发布:c语言 回车换行 编辑:程序博客网 时间:2024/05/22 03:14
今天偶然翻看以前的比较,突然发现一些基础的东西,跟大家分享下
Bootloader主要任务是:1初始化硬件,2启动操作系统
那么为什么要移植bootloader呢,1没种不同的CPU体系结构不同。2具体嵌入式板级设备的配置不同。3基于同一种cpu,但他们硬件资源配置可能不一致。
bootloader分两阶段启动:
第一阶段:1硬件设备初始化
(汇编) 2设置好堆栈 (这两步在flash中为第二阶段C语言准备好环境)
第二阶段: 1硬件设备初始化
(C语言) 2将内核映像和根文件系统映像从flash上读到RAM中
3调用内核
下面说一下我们经常用的Uboot
Uboot:支持多种嵌入式操作系统,支持多种嵌入式CPU
目录结构
Board:和开发板相关的文件
common:实现Uboot所支持的命令
cpu:与特定cpu架构相关的代码。每一款Uboot下支持的cpu在该目录下对应一个子目录。
Disk:对磁盘的支持。
doc:文档目录。
Drivers:Uboot支持的设备驱动程序都放在该目录,比如各种网卡,支持CFI的flash,串口,USB等。
FS:文件系统的支持。
include:头文件 .config目录下,有与开发板相关的配置头文件。
NET:与网络协议栈相关的代码。
Tools:生成Uboot的工具。
- Bootloader
- BootLoader
- BootLoader
- BootLoader
- Bootloader
- bootLoader
- bootloader
- bootloader
- bootloader
- BootLoader
- Bootloader
- bootloader
- bootloader
- bootloader
- Bootloader
- Bootloader
- Bootloader
- Bootloader
- Java 远程方法调用------RMI技术
- c语言学习中遇到的几个关键知识
- 面向对象的三个特性及类与对象的定义
- Android使用ant对项目进行编译签名优化打包
- 第九周任务1
- Bootloader
- 《第九周任务三》定义分数类中《和》运算符重载,实现分数的输入输出,改造源程序中对运算结果显示方式,使程序读起来更自然
- 变参的实现宏
- OHASD
- 将注入进行到底之---------Windows挂钩实现Dll注入 汇编实现
- 第九周任务2
- 【初学动态规划】之最长不降子序列
- 第九周实验报告任务3 定义分数类中<<和>>运算符重载,实现分数的输入输出,改造原程序中对运算结果显示方式,使程序读起来更自然。
- 移动应用的架构约束