





















|
阶段 |
核心职责 | 关键细节 |
|
Power on |
硬件复位,触发 CPU 从固定地址执行第一条指令 |
硬件初始化(如电源、时钟),无软件逻辑 |
|
BootROM |
芯片出厂固化的只读代码 |
|
| BL1 |
第一阶段引导加载器 |
|
|
BL2 |
精简引导程序 |
|
| BL31 |
EL3 安全监视器 |
|
|
BL33 (U-Boot) |
主引导程序 |
|
|
Kernel |
内核初始化 |
|
|
RootFS |
根文件系统 |
|
|
User Space |
用户空间初始化 |
|
1. 内核与 U-Boot 分区表的独立性:内核会重新扫描分区表,不依赖 U-Boot 的分区识别结果 —— 即使 U-Boot 识别了分区,内核仍会独立解析,确保根分区识别的可靠性(避免 U-Boot 分区表错误导致系统启动失败)。
2. RootFS 与 “切换根” 的逻辑:内核先挂载rootfs(虚拟内存文件系统)作为临时根,创建核心节点后,再挂载真实根文件系统(如 eMMC 的/dev/mmcblk0p1)
最后通过pivot_root切到真实的根,这个 “临时根→真实根” 的切换是内核启动的核心步骤
3. 分区表识别的递进:BL2(引导分区预识别)→ U-Boot(全量分区识别)→ 内核(独立重新识别),三层校验确保根分区定位可靠
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。