首页
›
Linux内核与驱动
›
007-Linux内核实时化
›
《中断线程化与自旋锁替换:实时内核锁竞争排查实战》
VIP10
本课程属于:007-Linux内核实时化
Linux内核与驱动 · 共 10 门相关课程,组合学习更完整。
查看所属VIP全部课程 →
← 返回所属目录
咨询 / 购买
中断线程化与自旋锁替换:实时内核锁竞争排查实战
共计 30 章节
点击此处阅读海量试读课程:100+行业、1000+细分领域
01
课程导论
实时内核面临的锁竞争挑战 · 中断线程化与自旋锁替换的动机与目标
课程导论
实时内核面临的锁…
02
中断上下文与进程上下文
中断处理程序的特点 · 中断上下文限制 · 为什么中断中不能睡眠
断上下文
进程上下文
03
自旋锁原理
自旋锁的忙等待机制 · 自旋锁在SMP与UP下的行为差异 · 自旋锁的变种
自旋锁原理
自旋锁的忙等待机…
04
自旋锁的代价
自旋锁导致的CPU空转 · 优先级反转 · 死锁风险
自旋锁的代价
CPU
05
中断线程化概念
将中断处理程序下半部移至内核线程 · 允许睡眠与调度
断线程化概念
断处理程序下半部…
06
中断线程化实现机制
request_threaded_i… · handler与thread_fn的… · 中断线程的优先级
断线程化实现机制
request
07
中断线程化与实时性
减少关中断时间 · 降低硬实时任务延迟 · 提高系统可调度性
断线程化
实时性
08
自旋锁替换为互斥锁
在可睡眠上下文中使用mutex代替s… · 避免忙等待
自旋锁替换为互斥…
mutex
09
锁替换的适用场景
哪些临界区可以替换 · 哪些必须保留自旋锁(如中断上下文)
锁替换的适用场景
哪些临界区可以替…
10
锁替换的注意事项
锁嵌套 · 锁顺序 · 锁持有时间
锁替换的注意事项
锁嵌套
11
锁竞争排查工具
perf lock · lockdep · ftrace
锁竞争排查工具
perf
12
lockdep死锁检测
lockdep原理 · 锁类与锁依赖图 · 如何解读lockdep报告
lockdep
死锁检测
13
perf lock分析
perf lock record/r… · 锁竞争热点识别 · 锁持有时间统计
perf
lock
14
ftrace追踪锁事件
trace_printk · function_graph追踪锁函…
ftrace
追踪锁事件
15
实战案例一
网络驱动中断线程化改造 · 将NAPI软中断线程化
实战案例一
网络驱动
16
实战案例二
块设备层自旋锁替换为互斥锁 · 减少IO路径的CPU空转
实战案例二
块设备层自旋锁替…
17
实战案例三
USB子系统中断线程化 · 解决USB热插拔导致的锁竞争
实战案例三
USB
18
实战案例四
实时任务调度器锁优化 · 替换调度域中的自旋锁
实战案例四
实时任务调度器锁…
19
实战案例五
音频驱动中断线程化 · 降低音频中断延迟抖动
实战案例五
音频驱动
20
锁竞争性能基准测试
使用cyclictest · hackbench · schbench评估优化效果
锁竞争性能基准测…
cyclictest
21
PREEMPT_RT内核
PREEMPT_RT补丁集对中断线程…
PREEMPT
RT
22
PREEMPT_RT下的自旋锁语义
spinlock_t变为可睡眠锁 · raw_spinlock_t保留原始…
PREEMPT
RT
23
中断线程化在PREEMPT_RT中的默认行为
所有中断强制线程化 · force_irqthreads参数
PREEMPT
RT
24
锁替换的自动化工具
Coccinelle脚本 · sparse静态分析 · checkpatch警告
锁替换的自动化工…
Coccinelle
25
锁竞争排查方法论
从现象到根因 · 系统化定位锁瓶颈的步骤
锁竞争排查方法论
从现象到根因
26
锁竞争与CPU利用率
如何区分锁竞争导致的CPU高占用与正…
CPU
锁竞争
27
多核扩展性
锁竞争对SMP扩展性的影响 · Amdahl定律在锁优化中的应用
多核扩展性
SMP
28
实时内核设计哲学
确定性 · 低延迟 · 可预测性
实时内核设计哲学
确定性
29
课程总结
中断线程化与锁替换的最佳实践 · 常见陷阱与规避策略
课程总结
断线程化
30
展望与进阶
用户态中断 · io_uring · BPF在锁竞争排查中的新趋势
进阶
用户态
所属VIP或分类
同VIP:Linux内核实时化:中断线程化原理与工程落地实践
同VIP:Linux内核实时化:从标准内核迁移到PREEMPT_RT
同VIP:Linux实时内核驱动迁移与中断线程化适配