首页
›
Linux内核与驱动
›
036-缓存一致性协议
›
《Linux驱动中缓存一致性协议编程与调试技巧》
VIP10
本课程属于:036-缓存一致性协议
Linux内核与驱动 · 共 10 门相关课程,组合学习更完整。
查看所属VIP全部课程 →
← 返回所属目录
咨询 / 购买
Linux驱动中缓存一致性协议编程与调试技巧
共计 30 章节
点击此处阅读海量试读课程:100+行业、1000+细分领域
01
缓存一致性基础
CPU缓存架构概述 · Cache Line与MESI协议简… · 为什么驱动需要关心缓存一致性
缓存一致性基础
CPU
02
硬件内存模型
Store Buffer与Inval… · 内存屏障指令(DMB/DSB/ISB… · ARMv8与x86内存模型对比
硬件内存模型
Store
03
DMA与缓存一致性
DMA传输中的一致性问题 · Streaming DMA映射与一致… · dma_alloc_coherent…
DMA
缓存一致性
04
DMA API实战
dma_map_single/unm… · dma_alloc_coherent… · dma_sync_single_fo…
DMA
API
05
Cache操作API
flush_dcache_page与… · clean_dcache_range… · dma_cache_sync函数族
Cache
API
06
ARM64缓存操作
ARM64 Cache架构(L1/L… · DC CVAC/DC CIVAC/I… · 内联汇编实现缓存刷新
ARM64
缓存操作
07
x86缓存操作
x86 WBINVD/CLFLUSH… · x86 PAT(Page Attri… · x86非临时访问(Non-tempo…
x86
缓存操作
08
内存屏障编程
读写屏障(rmb/wmb/mb) · DMA屏障(dma_rmb/dma_… · smp_xxx与dma_xxx屏障的…
内存屏障编程
rmb/wmb/mb
09
原子操作与缓存一致性
原子变量(atomic_t)与缓存一… · 自旋锁(spinlock)与缓存行乒… · 读写锁(rwlock)与缓存一致性
原子操作
缓存一致性
10
RCU与缓存一致性
RCU基本原理 · RCU与Cache Line bou… · RCU在驱动中的使用示例
RCU
缓存一致性
11
Per-CPU变量与缓存一致性
Per-CPU变量定义与访问 · Per-CPU变量与Cache Li… · 避免False Sharing
Per-CPU
变量
12
False Sharing问题
False Sharing原理与检测 · __cacheline_aligne… · 使用perf c2c检测False…
False
Sharing
13
DMA缓冲区对齐
DMA缓冲区对齐要求 · cache_line_size()与… · ALIGN宏与缓冲区对齐
DMA
缓冲区对齐
14
MMIO与缓存一致性
MMIO区域映射(ioremap/w… · MMIO与Cache Coheren… · Ordering Guarantee…
MMIO
缓存一致性
15
Non-cacheable映射
ioremap_nocache与io… · Write Combine Buff… · Non-cacheable内存使用场…
Non-cacheabl…
映射
16
设备树与缓存属性
设备树中dma-coherent属性 · dma-ranges与缓存一致性 · 设备树配置一致性内存区域
设备树
缓存属性
17
IOMMU与缓存一致性
IOMMU/SMMU简介 · IOMMU与DMA一致性 · SMMU Stage 1/Stage…
IOMMU
缓存一致性
18
调试工具
perf c2c缓存一致性检测 · ftrace跟踪缓存操作 · kprobe动态插桩分析缓存函数
调试工具
perf
19
调试技巧
使用printk与dump_stac… · 使用addr2line与objdum… · 使用crash工具分析dump
调试技巧
printk
20
常见Bug模式
DMA完成后未同步缓存 · 多核间共享数据未加屏障 · MMIO访问顺序错误
Bug
常见
21
案例分析1
网络驱动中的DMA Ring Buf… · TX/RX描述符缓存同步 · NAPI与缓存一致性
案例分析1
DMA
22
案例分析2
块设备驱动中的BIO与缓存一致性 · BIO完成回调中的缓存刷新 · Page Cache与DMA一致性
案例分析2
BIO
23
案例分析3
GPU驱动中的缓存一致性 · GPU与CPU共享内存 · GEM/DRM缓冲区一致性管理
案例分析3
GPU
24
案例分析4
音频驱动中的缓存一致性 · 音频环形缓冲区同步 · 低延迟场景下的缓存策略
案例分析4
音频驱动
25
案例分析5
FPGA加速器驱动中的缓存一致性 · FPGA与CPU共享内存 · AXI总线与缓存一致性
案例分析5
FPGA
26
性能优化
减少不必要的缓存刷新 · 使用Write Combining优… · 批量DMA传输与缓存策略
性能优化
减少不必要的缓存…
27
测试方法
一致性压力测试 · 随机读写测试 · 多核并发测试
测试方法
一致性压力测试
28
内核配置与编译
CONFIG_DMA_API_DEB… · CONFIG_DEBUG_SG · CONFIG_DEBUG_PAGEA…
内核配置
编译
29
跨架构移植
ARM vs x86 vs RISC… · 架构相关代码组织 · 使用通用API避免架构依赖
跨架构移植
ARM
30
未来趋势
CXL(Compute Expres… · CCIX与OpenCAPI · 硬件一致性协议演进
未来趋势
CXL
所属VIP或分类
同VIP:Cache刷新操作与DMA缓存一致性协议实战
同VIP:Cache刷新操作在x86与ARM平台下的移植适配
同VIP:Cache失效机制在DMA传输中的故障定位与排查