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

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

    关注

    5056

    文章

    18954

    浏览量

    301649
  • Uboot
    +关注

    关注

    4

    文章

    125

    浏览量

    28122
  • Uboot代码
    +关注

    关注

    0

    文章

    3

    浏览量

    4267
收藏 人收藏

    评论

    相关推荐

    读懂MSA(测量系统分析)

    读懂MSA(测量系统分析)
    的头像 发表于 11-01 11:08 639次阅读
    <b class='flag-5'>一</b><b class='flag-5'>文</b>读懂MSA(测量系统<b class='flag-5'>分析</b>)

    嵌入式系统的启动流程

    嵌入式系统的启动流程个复杂但有序的过程,它涉及从系统上电到操作系统内核及应用程序启动的多个阶段。
    的头像 发表于 10-05 17:44 245次阅读

    串口屏ModBus开发流程

    这里接前章节,继续迪屏的开发,前章主要讲解基础开发流程,此章节开始讲解迪ModBus协议栈的使用方法。前文指路:《迪串口屏基础GUI
    的头像 发表于 07-19 08:21 402次阅读
    迪<b class='flag-5'>文</b>串口屏ModBus开发<b class='flag-5'>流程</b>

    求助,关于TRAVEO MCU闪存启动流程的问题求解

    我有个关于 TRAVEO MCU 闪存启动流程的问题。 Q) 架构 TRM - 34.3.3 闪存启动流程,(6)、(8)、(9)、(10
    发表于 05-30 06:25

    Linux启动流程基本分析

    Linux启动流程总的来说可以分成三个阶段 Linux启动流程图   第步:上电 Ø在 x86 系统中,将 1M 空间最上面的 0xF00
    的头像 发表于 05-11 08:49 570次阅读
    Linux<b class='flag-5'>启动</b><b class='flag-5'>流程</b>基本<b class='flag-5'>分析</b>

    Rockchip 3588 系统启动流程

    Rockchip 3588是款高性能、低功耗的ARM处理器,广泛应用于智能电视、智能音箱和车载娱乐系统等领域。在本文中,我们将深入探讨Rockchip 3588的系统启动流程。 系统启动
    的头像 发表于 01-07 16:08 2241次阅读

    SMP多核secondary cpu启动流程

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

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

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

    Uboot命令实现大致流程

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

    UBoot如何跳转Kernel

    首先我们知道kernel的镜像最开始是压缩的zImage格式的存在,然后Uboot有工具mkimage把其转换为uImage。 什么?不知道?好,那我先给你整两幅图瞅瞅,你就知道了! 亿图这个水印
    的头像 发表于 12-04 17:02 455次阅读
    <b class='flag-5'>UBoot</b>如何跳转Kernel

    详解pcb不良分析

    详解pcb不良分析
    的头像 发表于 11-29 17:12 1099次阅读

    U-Boot启动过程概述 U-Boot启动代码具体分析

    阶段:主要是SOC内部的初始化,板级的初始化比较少,所以移植的修改量比较小。此阶段由汇编语言编写,代码主体分布在/uboot/cpu/s5pc11x/start.S和/uboot/board/samsung/x210/low
    的头像 发表于 11-27 10:24 3114次阅读
    U-Boot<b class='flag-5'>启动</b>过程概述 U-Boot<b class='flag-5'>启动</b>代码具体<b class='flag-5'>分析</b>

    springboot启动流程

    。 Spring Boot 的启动流程可以分为以下几个步骤:初始化启动环境、加载自动配置类、创建 Spring 上下文、启动嵌入式服务器。 初始化
    的头像 发表于 11-22 16:04 619次阅读

    了解pcb电路板加急打样流程

    了解pcb电路板加急打样流程
    的头像 发表于 11-08 14:21 6230次阅读

    启动(Cold boot)流程及阶段划分

    restart--冷启动 reset--热启动 ATF冷启动实现分为5个步骤: • BL1 - AP Trusted ROM,般为BootRom。 • BL2 - Trusted B
    的头像 发表于 11-07 15:17 1934次阅读
    冷<b class='flag-5'>启动</b>(Cold boot)<b class='flag-5'>流程</b>及阶段划分