当前位置: 首页 > news >正文

笔记整理—什么是uboot内核

       前几章我们用大量的时间介绍了uboot干了什么,本章我们将要对kernel于uboot的区别进行说明。

        uboot启动完成后,使用bootm可以去启动内核。

        uboot其实是一个裸机程序,只是复杂一点几乎可以看作是一堆东西的初始化再加上指令实现的。

        内核位于操作系统中的内核层,在内存上对设备访问与内存访问要高于应用层。

        uboot的镜像叫uboot.bin。linux的镜像叫zImage。

        系统有对内存的更细致化管理以及权限的管理,在系统启动后才有了应用层和驱动层一说。uboot->zImage->系统。

        在不通电的情况下,一个软件、系统,如bootloader、kernel、rootfs等都以镜像的形式存储在介质中,当上电后才在内存中运行,这叫静态过程。

        将镜像从sd卡读取->内存->进行初始化与框架建立->形成一个稳定的过程,这叫动态过程。

        静态加载要求,uboot和kernel的分区表保持一致,与sd卡实际使用分区保持一致。

        uboot的第一阶段进行重定位将第二阶段加载到DDR中(对于X210而言是0xc3e00000),这个地址就是uboot的链接地址。

        内核启动:使用uboot启动内核将uboot从SD卡(介质)中读到DDR中(重定位)放在内核的链接地址(0x30008000)。

        uboot的启动条件是无条件启动的,而kernel是需要uboot进行重定位才能启动的。

        下一章将会讲述kernel的启动过程与do_boot函数。


http://www.mrgr.cn/news/15451.html

相关文章:

  • 三耐环保家族控股99.17%:分红6000多万再补流,董事长董秘一年3次被警示
  • Thread.join()
  • 《机器学习》 贝叶斯分类器 原理、参数讲解及代码演示
  • CANoe入门(三) :CANoe全仿真阶段,模拟数据和信号
  • assert()在solidity的运用,模糊测试案例
  • Chainlit接入FastGpt接口完美对接,实现全新的用户聊天界面
  • Spring框架中PathMatchingResourcePatternResolver解析资源路径并匹配资源模式
  • SQL 对版本进行排序遇到的问题
  • 构建高可用性Nginx:配置策略与最佳实践
  • java中的Opencv:Opencv简介与开发环境部署
  • pnpm国内源设置
  • Nginx负载均衡中的连接超时处理:策略与配置
  • Java中的分布式一致性与共识算法
  • 【Git】在 Windows 和 Linux 上配置 SSH 密钥并初始化 Git 项目
  • 脚手架工具的应用(前端和后端搭建)
  • nginx 负载均衡详解与实现方法案例
  • SQL 语句及其分类
  • 鸿蒙HarmonyOS之使用preferences首选项保存获取数据
  • 三行五行的 SQL 只存在于教科书和培训班
  • STL容器中 list(双向链表)的增删改查