01
依赖管理概述
什么是驱动依赖 · 为什么需要依赖管理 · 核心目标
概念入门
02
依赖关系建模
依赖关系图 · 编译/链接/运行时 · 方向与循环依赖
建模图论
03
依赖分析工具
ldd · objdump · nm · readelf 使用与解读
工具调试
04
Makefile 依赖管理
规则 · 自动变量 · .d 文件 · 增量编译
构建Make
05
CMake 依赖管理
target_link_libraries · find_package · FetchContent · 接口库
CMake现代
06
Kbuild 与内核模块依赖
MODULE_SOFTDEP · EXPORT_SYMBOL · 符号导出
内核模块
07
设备树与固件依赖
clocks · resets · power-domains · 固件加载顺序
设备树固件
08
驱动 Probe 顺序控制
Probe 优先级 · deferred probe · driver_override
Probe顺序
09
符号依赖与版本控制
符号版本化 · MODULE_VERSION · EXPORT_SYMBOL_GPL
符号版本
10
循环依赖检测与消除
成因 · 拓扑排序 · 回调/分层/事件驱动
循环重构
11
依赖注入模式
依赖注入概念 · 驱动实现 · 回调与通知链
设计模式DI
12
通知链 (notifier chain)
Linux 通知链类型 · 注册回调 · 依赖管理应用
内核异步
13
设备链接 (device link)
device_link_add · DL_FLAG_STATELESS · AUTOREMOVE
设备链接
14
固件加载依赖管理
request_firmware · firmware caching · 路径优先级
固件加载
15
时钟与电源依赖管理
clk_get · regulator_get · pm_runtime_get_sync
电源时钟
16
DMA 与中断依赖管理
dma_request_channel · request_irq · 中断共享
DMA中断
17
IOMMU/IOVA 依赖管理
IOMMU 驱动依赖 · IOVA 分配器 · 设备绑定
IOMMU虚拟化
18
热插拔与依赖管理
热插拔事件 · 依赖重建 · 移除顺序控制
热插拔动态
19
容器化环境依赖管理
Docker 设备映射 · 依赖隔离 · cgroup 权限
容器Docker
20
虚拟化环境依赖管理
VFIO 直通 · virtio 依赖链 · Hypervisor 注入
虚拟化VFIO
21
依赖管理自动化测试
kunit · mock 模拟 · 依赖注入测试
测试kunit
22
依赖管理性能分析
依赖解析时间 · Probe 延迟 · 依赖图优化
性能分析
23
依赖管理调试技巧
dyndbg · ftrace 跟踪 · 依赖超时处理
调试ftrace
24
依赖管理最佳实践
分层设计 · 接口隔离 · 依赖倒置原则
最佳实践SOLID
25
依赖管理反模式
硬编码依赖 · 全局变量 · 隐式依赖
反模式警示
26
依赖管理文档化
依赖图自动生成 · YAML/JSON · 变更日志
文档自动化
27
依赖管理工具链
depmod · modprobe · insmod/rmmod 依赖逻辑
工具链模块
28
Android 依赖管理实践
HAL 依赖 · VINTF · Treble 架构
AndroidHAL
29
RTOS 依赖管理实践
FreeRTOS 任务依赖 · Zephyr 设备模型 · 超时处理
RTOSZephyr
30
依赖管理未来趋势
AI 辅助分析 · 动态依赖图 · 自适应管理
前沿AI