嵌入式系统中Uboot启动流程

电工技术 4年前 (2022) aysz01
0

首先介绍下UBoot,Uboot是嵌入式系统中最常用的bootloader,这里我们以s3c2410为例分析一下uboot的启动流程。首先通过uboot的链接文件,我们可以看到uboot运行是执行的第一段代码在start.S中。

ENTRY(_start)

SECTIONS

{

。 = 0x00000000;

。 = ALIGN(4);

.text :

{

cpu/arm920t/start.o (.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在执行过程中,代码的搬移籍内存的使用情况通过一个图,来说明一下。

以上就是Uboot的启动流程了。

版权声明:aysz01 发表于 2022-08-06 14:31:38。
转载请注明:嵌入式系统中Uboot启动流程 | 鳌游电工

暂无评论

暂无评论...