0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

一文分析Uboot启动流程

如意 来源:CSDN 作者:曹忠明 2020-06-20 10:03 次阅读

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

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 嵌入式
    +关注

    关注

    4981

    文章

    18278

    浏览量

    288374
  • Uboot
    +关注

    关注

    4

    文章

    123

    浏览量

    27863
  • Uboot代码
    +关注

    关注

    0

    文章

    3

    浏览量

    4245
收藏 人收藏

    评论

    相关推荐

    SMP多核secondary cpu启动流程

    图,详细分析可以参考上篇博文。其中以下流程执行secondary cpu启动相关的一些初始化工作: 在初始化完成且hotplug线程创建完成后,就可通过以下流程唤醒cpu hotplu
    的头像 发表于 12-05 17:41 273次阅读
    SMP多核secondary cpu<b class='flag-5'>启动</b><b class='flag-5'>流程</b>

    uboot启动BL1和BL2两个阶段介绍

    之前对这个uboot的源码了解有些许遗忘。最近做AVB校验,需要uboot到kernel的这个过程。这里再复习一下。 与大多数BootLoader一样,uboot启动过程分为BL1和
    的头像 发表于 12-04 17:53 854次阅读

    Uboot命令实现大致流程

    0x40。 (这里你应该知道了为什么要使用bootm命令,以及为什么要是有uImage格式) 在前面我们曾经分析Uboot启动
    的头像 发表于 12-04 17:09 182次阅读
    <b class='flag-5'>Uboot</b>命令实现大致<b class='flag-5'>流程</b>图

    ATF启动流程介绍

    一、BL32(TEE OS)的准备 ATF启动流程 ATF流程 ATF冷启动实现分为5个步骤: • BL1 - AP Trusted ROM,一般为BootRom。 • BL2 - T
    的头像 发表于 11-02 17:51 549次阅读
    ATF<b class='flag-5'>启动</b><b class='flag-5'>流程</b>介绍

    STM32的完整启动流程分析

    STM32的完整启动流程分析
    的头像 发表于 10-25 16:00 771次阅读
    STM32的完整<b class='flag-5'>启动</b><b class='flag-5'>流程</b><b class='flag-5'>分析</b>

    uboot的基本概念和启动流程分析

    当我们厌倦了裸机程序,而想要采用操作系统的时候,uboot就是不得不引入的一段程序。所以,uboot就是一段引导程序,在加载系统内核之前,完成硬件初始化,内存映射,为后续内核的引导提供一个良好的环境。uboot是bootload
    的头像 发表于 10-24 17:19 583次阅读
    <b class='flag-5'>uboot</b>的基本概念和<b class='flag-5'>启动</b><b class='flag-5'>流程</b><b class='flag-5'>分析</b>

    Linux整体汇编启动流程分析

    汇编启动流程 先从整体分析汇编做的事情,有个大体框架。 路径: arch/riscv/kernel/head.S ,入口是 ENTRY(_start_kernel) 从 ENTRY
    的头像 发表于 10-08 11:28 298次阅读
    Linux整体汇编<b class='flag-5'>启动</b><b class='flag-5'>流程</b><b class='flag-5'>分析</b>

    d1哪吒开发板的启动流程分析

    将程序烧录到sd卡中。 这里将boot0的固件烧录到sd卡的8K处,系统可以正常的启动。 5.裸机程序的编写 在分析了上述SPL和opensbi的启动流程后,自行编译
    发表于 08-16 08:16

    记录一下uboot编译的问题

    前几天编译uboot时遇到一些问题,先记录一下,linux嵌入式开发还是蛮意思的,要想玩的溜,就必须掌握最基本的uboot、kernel移植、适配、裁剪。
    的头像 发表于 07-21 16:05 529次阅读
    记录一下<b class='flag-5'>uboot</b>编译的问题

    u-boot启动流程分析

    今天给大家全面的分析一下u-boot启动流程。整理这篇文章花费时间较长,中间很长时间未更新,希望这篇文章对大家有所帮助。
    发表于 07-12 15:16 453次阅读
    u-boot<b class='flag-5'>启动</b><b class='flag-5'>流程</b><b class='flag-5'>分析</b>

    Openwrt开发指南 第13章 OpenWrt启动流程

    任何系统的启动都是开发人员首要关注的问题,因为只有了解了系统的启动流程启动机制,才能真正掌握一个系统,如果对启动
    的头像 发表于 06-29 09:09 2562次阅读
    Openwrt开发指南 第13章 OpenWrt<b class='flag-5'>启动</b><b class='flag-5'>流程</b>

    NUC972上电启动流程,IROM和ISRAM都不是对应0地址是怎么回事?

    参考其它ARM芯片的启动流程,网上这样说的,上电后,从0地址开始执行,如果是从NAND启动,则IROM自动加载NAND的几KB数据到ISRAM运行,1、但是IROM和ISRAM都不是对应0地址啊
    发表于 06-15 06:31

    AURIX™ TC3xx启动流程详解

    本文首先介绍整个启动流程的概况,接着分别介绍了firmware启动流程,boot mode的配置,以及用户程序启动
    的头像 发表于 06-06 10:31 2329次阅读
    AURIX™ TC3xx<b class='flag-5'>启动</b><b class='flag-5'>流程</b>详解

    从单片机步入Linux之uboot编译、烧录与启动

    uboot官网获得的是压缩包,需要进行解压获得uboot源文件
    发表于 05-18 17:44 656次阅读
    从单片机步入Linux之<b class='flag-5'>uboot</b>编译、烧录与<b class='flag-5'>启动</b>

    TQT507如何更换启动logo(包括uboot和kernel)

    T507 logo使用bmp格式,已实现uboot到kernel的连续显示。
    的头像 发表于 04-28 08:57 382次阅读
    TQT507如何更换<b class='flag-5'>启动</b>logo(包括<b class='flag-5'>uboot</b>和kernel)