首页
›
Linux内核与驱动
›
002-驱动开发实战
›
《Linux驱动调试环境搭建:QEMU与内核模块测试》
VIP10
本课程属于:002-驱动开发实战
Linux内核与驱动 · 共 10 门相关课程,组合学习更完整。
查看所属VIP全部课程 →
← 返回所属目录
咨询 / 购买
Linux驱动调试环境搭建:QEMU与内核模块测试
共计 30 章节
点击此处阅读海量试读课程:100+行业、1000+细分领域
01
课程导论
为什么需要QEMU调试环境?QEMU…
课程导论
QEMU
02
QEMU基础
QEMU架构概览(TCG · KVM加速) · 支持的架构(ARM
QEMU
TCG
03
宿主机环境准备
Ubuntu 22.04 LTS安装 · 必要工具链安装(gcc · make
宿主机环境准备
Ubuntu
04
交叉编译工具链
ARM交叉编译工具链安装(gcc-a… · 环境变量配置
交叉编译工具链
ARM
05
Linux内核源码获取
从kernel.org下载主线内核 · 使用git clone获取特定版本
Linux
内核源码获取
06
内核配置基础
make menuconfig图形化… · 关键选项(驱动模块支持 · 调试符号)
内核配置基础
make
07
内核编译实战
make zImage · make modules · make dtbs编译流程详解
内核编译实战
make
08
设备树基础
DTS语法简介 · 设备树编译(dtc) · 在QEMU中传递设备树
设备树基础
DTS
09
根文件系统制作
使用BusyBox构建最小根文件系统 · 制作initramfs
根文件系统制作
BusyBox
10
QEMU启动内核
qemu-system-arm命令行… · 启动第一个内核镜像
QEMU
启动内核
11
QEMU网络配置
使用tap/tun桥接网络 · 配置NFS根文件系统
QEMU
网络配置
12
内核模块开发入门
Hello World模块代码 · Makefile编写 · 模块加载与卸载
内核模块开发入门
Hello
13
模块参数与导出符号
module_param · EXPORT_SYMBOL的使用与调…
模块参数
导出符号
14
字符设备驱动基础
file_operations结构体 · cdev注册 · 设备号分配
字符设备驱动基础
file
15
在QEMU中测试字符设备
创建设备节点 · 使用echo/cat测试 · dmesg日志分析
QEMU
测试字符设备
16
使用GDB调试内核
QEMU的-gdb选项 · gdb连接目标 · 设置断点
GDB
使用
17
KGDB双机调试
宿主机作为调试机 · QEMU作为目标机 · 串口调试配置
KGDB
双机调试
18
printk调试技巧
日志级别控制 · 动态调试(dynamic debug… · trace_printk
printk
调试技巧
19
ftrace跟踪内核
function tracer · function_graph tra… · trace-cmd工具
ftrace
跟踪内核
20
QEMU内存模型
物理内存布局 · MMIO区域模拟 · 设备寄存器访问
QEMU
内存模型
21
模拟平台设备
在QEMU中添加虚拟平台设备 · 设备树描述 · 驱动匹配
模拟平台设备
QEMU
22
中断控制器模拟
GIC(通用中断控制器)模拟 · 中断号分配 · request_irq
断控制器模拟
GIC
23
DMA引擎模拟
虚拟DMA控制器实现 · dmaengine API使用 · 性能测试
DMA
引擎模拟
24
时钟与定时器
QEMU中时钟源模拟 · clk框架 · hrtimer使用
时钟
定时器
25
I2C/SPI总线模拟
QEMU中I2C控制器模拟 · i2c-dev用户态测试
I2C/SPI
总线模拟
26
PCIe设备模拟
QEMU PCIe主机桥模拟 · PCI配置空间 · MSI中断
PCIe
设备模拟
27
USB设备模拟
QEMU USB控制器(EHCI/X… · usb-gadget驱动测试
USB
设备模拟
28
性能分析
使用perf工具在QEMU中采样 · 分析驱动热点函数
性能分析
perf
29
自动化测试框架
使用QEMU + pytest进行内…
自动化测试框架
QEMU
30
课程总结与进阶
从QEMU到FPGA原型验证 · 真实硬件调试迁移指南
课程总结
进阶
所属VIP或分类
同VIP:Linux内核ioctl命令设计:编码规范与安全校验
同VIP:Linux内核驱动调试:kgdb与printk联合使用
同VIP:Linux驱动DMA缓冲区共享与mmap接口开发