笔记整理—什么是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函数。

相关推荐
编程之升级打怪8 分钟前
Arduino嵌入式笔记
嵌入式硬件
华清远见IT开放实验室20 分钟前
STM32+Linux双体系,零基础玩转嵌入式
linux·stm32·嵌入式硬件
LCG元25 分钟前
STM32实战:基于FreeRTOS的智能小车多任务调度(循迹+避障+通信)
stm32·单片机·嵌入式硬件
重生的黑客26 分钟前
Linux 进程状态详解:从理论到实践,僵尸进程与孤儿进程
linux·运维·服务器
qeen8731 分钟前
【算法笔记】二分查找与二分答案
c语言·c++·笔记·学习·算法·二分
脆皮炸鸡75536 分钟前
进程的程序替换
linux·经验分享·笔记·vim·学习方法
划水的code搬运工小李1 小时前
ubuntu下使用opencode
linux·运维·ubuntu
俊基科技1 小时前
FT‑02 全双工语音通话消回音测试底座:设计原理、性能特性与应用场景
嵌入式硬件·音频测试·语音处理模块·全双工通话·声学回声消除
ZPC82101 小时前
Ubuntu 实时性优化(专属定制版,适配 fast_shm 通信)
linux·数据库·postgresql
郝学胜-神的一滴1 小时前
epoll 边缘触发 vs 水平触发:从管道到套接字的深度实战
linux·服务器·开发语言·c++·网络协议·unix