首页
›
Linux内核与驱动
›
060-Linux内核启动流程核心技术剖析
›
《ARM64启动链路调试与MMU页表初始化》
VIP10
本课程属于:060-Linux内核启动流程核心技术剖析
Linux内核与驱动 · 共 10 门相关课程,组合学习更完整。
查看所属VIP全部课程 →
← 返回所属目录
咨询 / 购买
ARM64启动链路调试与MMU页表初始化
共计 30 章节
点击此处阅读海量试读课程:100+行业、1000+细分领域
01
课程导论
为什么ARM64启动流程中页表创建与… · ATF · 裸机)的宏观对比
课程导论
ARM64
02
ARM64虚拟内存架构基础
VA · PA · IPA地址空间概念
ARM64
虚拟内存架构基础
03
页表描述符详解
Table Descriptor与P… · 以及属性位(AF · AP
页表描述符详解
Table
04
MMU控制寄存器
SCTLR_EL1/EL2/EL3的… · C · I
MMU
控制寄存器
05
启动阶段0(EL3)
从Reset Vector到第一个页… · TLB · MMU默认关闭)
EL3
启动阶段0
06
ATF BL31启动流程
BL31如何创建EL3页表 · 以及如何配置SCTLR_EL3.M来…
ATF
BL31
07
ATF BL32(OP-TEE)启动流程
安全世界页表的独立创建 · 以及TZASC/内存隔离对页表的影响
ATF
BL32
08
ATF BL33(U-Boot/EDK2)启动流程
非安全世界页表的创建 · 以及如何从EL3切换到EL2/EL1
ATF
BL33
09
U-Boot SPL启动流程
SPL在SRAM中创建临时页表(Fl…
U-Boot
SPL
10
U-Boot Proper启动流程
重定位后重新创建页表 · 支持动态映射(如设备树 · 内核加载地址)
U-Boot
Proper
11
Linux内核启动流程(head.S)
早期汇编阶段创建恒等映射页表(Ide…
Linux
head.S
12
Linux内核启动流程(MMU初始化)
__enable_mmu函数如何配置… · MAIR_EL1并刷新TLB
Linux
MMU
13
页表创建差异点(1)
物理地址连续性与非连续性映射策略(F…
页表创建差异点
1
14
页表创建差异点(2)
内存类型与属性配置差异(Normal… · Cache策略)
页表创建差异点
2
15
页表创建差异点(3)
页表基地址选择(TTBR0_ELx…
页表创建差异点
3
16
MMU初始化差异点(1)
Cache与TLB的清理策略(Inv…
MMU
初始化差异点
17
MMU初始化差异点(2)
TCR_ELx配置差异(TG0 · SH0 · ORGN0
MMU
初始化差异点
18
MMU初始化差异点(3)
MAIR_ELx属性定义差异(如AT… · Linux使用7个属性)
MMU
初始化差异点
19
MMU初始化差异点(4)
ASID与VMID的启用时机(Lin… · ATF通常不使用)
MMU
初始化差异点
20
MMU初始化差异点(5)
WXN与PXN权限位的启用策略(安全…
MMU
初始化差异点
21
启动流程中的页表回收
U-Boot/Linux如何复用或丢…
启动流程
页表回收
22
多核启动中的页表同步
主核创建页表后 · 从核如何通过Synchronizat…
多核启动
页表同步
23
虚拟化扩展对启动的影响
EL2页表(Stage-2)的创建时… · 以及VHE(Virtualizati…
虚拟化扩展对启动…
EL2
24
安全启动与页表完整性
如何通过页表属性(如XN)防止代码注… · 以及TCR_ELx的IPS字段配置
安全启动
页表完整性
25
调试与诊断
常见MMU启动故障(Page Fau… · Translation Fault)…
调试
诊断
26
性能优化
TLB Miss率优化策略(大页映射 · Contiguous Bit的使用)
性能优化
TLB
27
案例实战(1)
从零编写一个最小ARM64裸机程序 · 创建页表并开启MMU
案例实战
1
28
案例实战(2)
在QEMU上模拟U-Boot与Lin… · 对比页表内容
案例实战
2
29
案例实战(3)
修改ATF BL31页表属性 · 观察对OP-TEE启动的影响
案例实战
3
30
课程总结
ARM64启动流程页表与MMU初始化…
课程总结
ARM64
所属VIP或分类
同VIP:ACPI启动工程案例:嵌入式设备电源集成与调试优化
同VIP:ACPI启动配置调试:电源管理表解析与性能优化
同VIP:ACPI启动项目实战:电源性能调优与表解析工程