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

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

3天内不再提示

内核启动第一步的物理内存分布

麦辣鸡腿堡 来源:TrustZone 作者:Hcoco 2023-12-04 17:45 次阅读
  • • 1.uboot 调用do_bootm_linux 中的 theKernel (0, machid, bd->bi_boot_params)进入kernel部分代码

    该函数最终会通过r0,r1,r2这三个寄存器分别把0、machid、传递传参的首地址传给kernel。

  • • 2.Kernel 的入口 在head.S中ENTRY(stext)处, 此阶段是汇编阶段 ,此阶段会解析r0,r1,r2(也就是uboot的传参)最终会通过进入start_kernel,进入到c语言环境执行。

经过前面uboot的准备工作,通过theKernel (0, machid, bd->bi_boot_params);

开始进入到kernel部分开始执行。

其中 第二个参数为机器 ID,第三参数为 u-boot 传递给内核参数存放在内存中的首地址 ,此处是 0x30000100

由 zImage 的生成过程我们可以知道,第一阶段运行的内核映像实际就是arch/arm/boot/compressed/vmlinux,而这一阶段所涉及的文件也只有三个:

  • • (1)arch/arm/boot/compressed/vmlinux.lds
  • • (2)arch/arm/boot/compressed/head.S
  • • (3)arch/arm/boot/compressed/misc.c

图片

下面我们的分析集中在 arch/arm/boot/compressed/head.S, 适当参考 vmlinux.lds 。

从linux/arch/arm/boot/compressed/vmlinux.lds文件可以看出head.S的入口地址为ENTRY(_start),也就是head.S汇编文件的_start标号开始的第一条指令。

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

    关注

    3

    文章

    1341

    浏览量

    40116
  • Linux
    +关注

    关注

    87

    文章

    11138

    浏览量

    208151
  • Uboot
    +关注

    关注

    4

    文章

    124

    浏览量

    28074
  • Kernel
    +关注

    关注

    0

    文章

    48

    浏览量

    11103
收藏 人收藏

    评论

    相关推荐

    学习单片机的第一步是什么??

    我是学生,想学习下单片机。。。我第一步干嘛好呢???要先买单片机的学习板么?买怎样的???我看到淘宝上大把的,但几乎都不同。。。我该怎么办??
    发表于 11-23 16:40

    玩转嵌入式arm的第一步是先安装交叉编译工具吗?

    玩转嵌入式arm的第一步是先安装交叉编译工具吗
    发表于 04-28 20:43

    怎么让直流电源执行时 一步一步执行

    `怎么让直流电源执行时 一步一步执行,比如:第一步输出5V 、2A、 工作10秒、再执行第二、第二输出3V、1A、工作30秒再执行第三
    发表于 03-08 09:02

    嵌入式arm的第一步是先安装交叉编译工具吗?

    嵌入式arm的第一步必须先安装交叉编译工具吗?
    发表于 07-16 08:09

    刚踏入线路板行业,请问抄板的第一步要先熟悉哪里?

    刚踏入线路板行业,请问抄板的第一步要先熟悉哪里?有没有可以带入门的大兄弟??***微信同号
    发表于 05-07 20:08

    接触单片机和刚接触单片机的第一步怎么走

    我写这篇文章,是我在百度看到很多想接触单片机或者已经接触单片机的人,不知道怎么入门,或者不知道第一步怎么走。我也是把我的经验写出来,这次的只不过针对的是想接触单片机的,刚接触单片机的,开始都会
    发表于 11-23 06:36

    用JTAG调试ARM程序第一步就跳飞了是什么原因

    重新启动计算机后再重新读入MEM,结果还是没有变化。读入的MEM的值是从哪里读入的。2、通过JTAG来调试程序,第一步就不能正常执行,始终跳飞了,(JTAG的线没有问题)。是arm的问题,还是什么?谢谢
    发表于 06-21 15:00

    请问SPT3.1 PeakSearch第一步怎么用?

    S32R45EVB: 当我选择“peakSearch_256smp_64crp.pspt”检查第一步(Threshold screening)时,我发现结果并不像预期的那样: 几乎所有偶数
    发表于 04-23 10:42

    踏出成功职业生涯的第一步

    踏出成功职业生涯的第一步 国际电气与电子工程师协会(IEEE)的业界思想领袖们的独家秘诀:如何在竞争激烈的就业市场上脱颖而出
    发表于 11-17 09:24 866次阅读

    R2推动微软向云计算迈出第一步

    R2推动微软向云计算迈出第一步 关于微软最近的热门话题无疑是Windows7,但内容大多是该操作系统与Apple的竞争、比较起Vista性能上的提升等,却很少有人注意到Windows7以及其
    发表于 12-19 09:33 377次阅读

    MP3选购第一步 了解存储介质和格式

    MP3选购第一步 了解存储介质和格式 人家都说MP3是个简单的东西,没有什么技术含量。但是如果你真的什么都不去了解,MP3这么好似简单的东西,
    发表于 02-02 10:57 1066次阅读

    MES是迈向智能之路的第一步

    本文主要介绍了MES是迈向智能之路的第一步.
    发表于 06-26 08:00 11次下载

    迈出迈向更可持续未来的第一步

    。 “迈出第一步是最重要的事情,” onsemi 首席执行官、总裁兼董事会成员 Hassane El-Khoury 在接受《电力电子新闻》采访时表示。 “许多人推迟迈出第一步是因为他们不想学习如何做到这点,”他继续说道。“我们
    的头像 发表于 08-03 15:30 857次阅读
    迈出迈向更可持续未来的<b class='flag-5'>第一步</b>

    仿真分析:3DIC全流程解决方案的第一步

    ‍ ‍ 原文标题:仿真分析:3DIC全流程解决方案的第一步 文章出处:【微信公众号:新思科技】欢迎添加关注!文章转载请注明出处。
    的头像 发表于 05-11 20:16 660次阅读
    仿真分析:3DIC全流程解决方案的<b class='flag-5'>第一步</b>

    本周五|仿真分析:3DIC全流程解决方案的第一步

    ‍ ‍ 原文标题:本周五|仿真分析:3DIC全流程解决方案的第一步 文章出处:【微信公众号:新思科技】欢迎添加关注!文章转载请注明出处。
    的头像 发表于 05-11 20:16 422次阅读
    本周五|仿真分析:3DIC全流程解决方案的<b class='flag-5'>第一步</b>