首页
›
Linux内核与驱动
›
077-Linux内核启动流程
›
《ARM64启动时设备树解析与内存映射调试》
VIP10
本课程属于:077-Linux内核启动流程
Linux内核与驱动 · 共 10 门相关课程,组合学习更完整。
查看所属VIP全部课程 →
← 返回所属目录
咨询 / 购买
ARM64启动时设备树解析与内存映射调试
共计 30 章节
点击此处阅读海量试读课程:100+行业、1000+细分领域
01
ARM64启动流程概述
从Reset到C语言环境的建立 · 理解启动的宏观阶段
ARM64
启动流程概述
02
设备树(DTS)基础语法
节点 · 属性 · 标签
DTS
设备树
03
设备树(DTB)二进制格式
FDT结构 · 魔数 · 结构块
DTB
设备树
04
Bootloader传递设备树
U-Boot如何加载并传递DTB地址… · 分析启动参数
Bootloader
传递设备树
05
内核早期引导汇编
head.S与stext入口 · 设置页表 · 使能MMU前的准备工作
内核早期引导汇编
head.S
06
设备树早期解析
unflatten_device_t… · 将DTB转换为树状结构
设备树早期解析
unflatten
07
内存节点解析
/memory节点的reg属性 · 如何获取物理内存的起始地址和大小
内存节点解析
memory
08
保留内存(reserved-memory)
解析保留内存节点 · 理解DMA和安全内存的预留机制
reserved-mem…
保留内存
09
Chosen节点
bootargs · stdout-path等属性 · 内核如何获取命令行参数
Chosen
节点
10
CPU节点与拓扑
解析cpu-map · cpu@0等节点 · 构建SMP拓扑结构
CPU
节点
11
中断控制器(GIC)解析
GICv2/v3的设备树节点 · 中断号与CPU接口的映射
GIC
断控制器
12
定时器节点解析
ARM Generic Timer的… · 获取物理/虚拟计数器频率
定时器节点解析
ARM
13
内存映射I/O(MMIO)
设备reg属性与地址转换 · 建立物理地址到虚拟地址的映射
I/O
MMIO
14
页表创建与MMU使能
create_page_tables… · 早期页表的填充与MMU开启
MMU
页表创建
15
Fixmap与早期ioremap
固定映射区域的建立 · 用于早期控制台和调试
Fixmap
ioremap
16
memblock分配器
memblock_add()与mem… · 物理内存的早期管理
memblock
分配器
17
设备树与ACPI共存
在ARM64上设备树与ACPI的互斥…
ACPI
设备树
18
PCIe主机桥解析
pci-host-bridge节点 · 配置空间与总线范围的映射
PCIe
主机桥解析
19
DMA与IOMMU设备树
iommu-map · dma-ranges属性 · 设备与IOMMU的绑定
DMA
IOMMU
20
时钟与复位控制器
fixed-clock · reset-controller节点 · 时钟树的初始化
时钟
复位控制器
21
Pin控制与GPIO
pinctrl与gpio-contr… · 引脚复用与中断配置
Pin
GPIO
22
电源管理节点
psci节点与CPU空闲状态 · 系统挂起与唤醒的设备树描述
电源管理节点
psci
23
设备树覆盖(Overlay)
动态设备树加载 · 用于FPGA或热插拔外设
Overlay
设备树覆盖
24
调试工具
dtc · fdtdump · devicetree.org规范
调试工具
dtc
25
内核启动日志分析
解析earlycon与printk输… · 跟踪设备树解析过程
内核启动日志分析
earlycon
26
内存映射调试
/proc/iomem与/sys/k… · 查看物理内存布局
内存映射调试
proc/iomem
27
JTAG与硬件调试
使用JTAG跟踪MMU设置 · 验证页表与设备树地址一致性
JTAG
硬件调试
28
常见错误与陷阱
地址对齐错误 · 中断号冲突 · 内存重叠
常见错误
陷阱
29
性能优化
设备树解析时间测量 · 预解析与缓存策略
性能优化
设备树解析时间测…
30
实战项目
从零编写一个ARM64最小系统的设备… · 并调试启动过程
实战项目
ARM64
所属VIP或分类
同VIP:ARM64启动时head-S页表构建与MMU使能故障排查
同VIP:EFI-stub引导下ARM64设备树传递路径与调试方法
同VIP:head-S阶段异常向量表配置与ARM64启动调试