barebox启动分析(一)

本文主要介绍了barebox启动的分析过程,包括第一步查看链接脚本,特别是如何从barebox的链接脚本开始,理解在定义了CONFIG_PBL_IMAGE时如何执行PBL代码。第二步是抓住代码入口,通过ENTRY_FUNCTION宏找到最终的barebox_arm_entry函数,从而了解barebox如何解压并执行自身。
摘要由CSDN通过智能技术生成

barebox启动分析 一

当做了uboot,kernel,little kernel 的启动分析后,其实会发现启动分析也有一定的方法

第一步链接脚本

无论是哪个项目,我们看代码的入口总是先去找main,而这些项目,我们去找链接脚本
barebox的链接脚本:arch/arm/lib/barebox.lds.S

ENTRY(start)
SECTIONS
{
#ifdef CONFIG_RELOCATABLE
        . = 0x0;
#else
        . = TEXT_BASE;
#endif

#ifndef CONFIG_PBL_IMAGE
        PRE_IMAGE
#endif
        . = ALIGN(4);
        .text      :   
        {
                _stext = .;
                _text = .;
                *(.text_entry*)
                __bare_init_start = .;
                *(.text_bare_init*)
                __bare_init_end = .;
                . = ALIGN(4);
                __exceptions_start = .;
                KEEP(*(.text_exceptions*))
                __exceptions_stop = .;
                *(.text*)
        }
        BAREBOX_BARE_INIT_SIZE
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值