Uboot是嵌入式系统中最常用的bootloader,这里我们以s3c2410为例分析一下uboot的启动流程。首先通过uboot的链接文件,我们可以看到uboot运行是执行的第一段代码在start.S中。
ENTRY(_start)
SECTIONS
{
。 = 0x00000000;
。 = ALIGN(4);
.text :
{
*(.text)
}
。 = ALIGN(4);
.rodata : { *(.rodata) }
。 = ALIGN(4);
.data : { *(.data) }
。 = ALIGN(4);
.got : { *(.got) }
。 = 。;
__u_boot_cmd_start = 。;
.u_boot_cmd : { *(.u_boot_cmd) }
__u_boot_cmd_end = 。;
。 = ALIGN(4);
__bss_start = 。;
.bss : { *(.bss) }
_end = 。;
}
我们找到这个文件,以这个文件为起点看uboot的启动流程。这里我们通过一个图来说明这个过程。
最后我们把整个uboot在执行过程中,代码的搬移籍内存的使用情况通过一个图,来说明一下。
-
嵌入式
+关注
关注
5096文章
19199浏览量
308274 -
Uboot
+关注
关注
4文章
126浏览量
28378 -
Uboot代码
+关注
关注
0文章
3浏览量
4291
发布评论请先 登录
相关推荐
迅为RK3562开发板Android源码定制开发-uboot开发
嵌入式学习-飞凌嵌入式ElfBoard ELF 1板卡-Linux内核移植之内核启动流程
飞凌嵌入式ElfBoard ELF 1板卡-Linux内核移植之内核启动流程
ADC_PRO能分析其用其他方式保存的文数据吗?
一文搞懂软核的固化、启动和MultiBoot实现
![<b class='flag-5'>一</b><b class='flag-5'>文</b>搞懂软核的固化、<b class='flag-5'>启动</b>和MultiBoot实现](https://file1.elecfans.com/web3/M00/01/6D/wKgZPGdTwJaASYpBAAAb8Xf5sFU700.png)
AMD Versal自适应SoC CPM5 QDMA的Tandem PCIe启动流程介绍
![AMD Versal自适应SoC CPM5 QDMA的Tandem PCIe<b class='flag-5'>启动</b><b class='flag-5'>流程</b>介绍](https://file1.elecfans.com/web2/M00/07/A1/wKgaombqNhqAHonqAAHwYlZwzzw387.jpg)
官方,2K0300支持SD启动系统吗?
求助,关于TRAVEO MCU闪存启动流程的问题求解
如何将SD卡众多文件打包成一个.img文件方便一键烧写呢?
![如何将SD卡众多文件打包成<b class='flag-5'>一</b>个.img文件方便<b class='flag-5'>一</b>键烧写呢?](https://file1.elecfans.com/web2/M00/C9/9B/wKgaomYeNxKAL2JJAAAhyT8XPGg675.png)
评论