首页
›
Linux内核与驱动
›
067-Linux网络设备驱动
›
《中断处理与NAPI轮询在Linux内核中的协同设计》
VIP10
本课程属于:067-Linux网络设备驱动
Linux内核与驱动 · 共 10 门相关课程,组合学习更完整。
查看所属VIP全部课程 →
← 返回所属目录
咨询 / 购买
中断处理与NAPI轮询在Linux内核中的协同设计
共计 30 章节
点击此处阅读海量试读课程:100+行业、1000+细分领域
01
中断基础概念
中断的定义 · 中断向量表 · 中断控制器(如APIC)的作用
断基础概念
断的定义
02
Linux中断子系统架构
从硬件中断到CPU响应 · 再到内核中断服务例程(ISR)的完整…
Linux
断子系统架构
03
中断描述符(irq_desc)
数据结构 · 中断状态 · 中断处理函数链
irq
desc
04
中断注册与注销
request_irq() · free_irq() · 线程化中断request_threa…
断注册
注销
05
中断上下文与进程上下文
中断上下文的特点 · 限制 · 不可睡眠的原因
断上下文
进程上下文
06
上半部与下半部机制
上半部(硬中断)与下半部(taskl… · workqueue · softirq)的分工
上半部
下半部机制
07
软中断(softirq)
软中断的类型 · 注册 · 触发与执行时机(ksoftirqd)
softirq
断的类型
08
Tasklet机制
基于软中断的实现 · 调度与执行 · 与软中断的关系
Tasklet
机制
09
工作队列(workqueue)
工作队列与内核线程 · 与tasklet的区别 · 使用场景
workqueue
工作队列
10
中断负载问题
高吞吐量网络场景下传统中断方式的瓶颈… · 上下文切换开销)
断负载问题
高吞吐量网络场景…
11
NAPI简介
NAPI(New API)的起源 · 设计目标 · 核心思想(中断+轮询混合)
NAPI
简介
12
NAPI核心数据结构
napi_struct结构体 · poll函数指针 · 状态标志(NAPI_STATE_SC…
NAPI
核心数据结构
13
NAPI的初始化与注册
netif_napi_add() · napi_enable() · napi_disable()
NAPI
的初始化
14
NAPI调度机制
中断触发后关闭中断并调度NAPI · poll循环处理数据包
NAPI
调度机制
15
NAPI轮询过程详解
poll函数返回值 · 权重(weight)控制 · 数据包处理与释放
NAPI
轮询过程详解
16
NAPI与中断的协同
中断触发->关闭中断->NAPI轮询…
NAPI
断的协同
17
NAPI的驱动适配
网卡驱动如何实现NAPI回调 · 收包函数(netif_receive…
NAPI
的驱动适配
18
NAPI与GRO(Generic Receive Offload)
GRO合并小包减少NAPI轮询次数
NAPI
GRO
19
NAPI与RPS(Receive Packet Steering)
多队列网卡与NAPI的负载均衡
NAPI
RPS
20
NAPI与RFS(Receive Flow Steering)
基于流的CPU亲和性优化
NAPI
RFS
21
中断亲和性(IRQ Affinity)
将中断绑定到特定CPU核心 · 配合NAPI提升缓存命中率
IRQ
Affinity
22
中断合并(Interrupt Coalescing)
硬件层面延迟中断触发 · 配合NAPI减少中断次数
Interrupt
Coalescing
23
NAPI在虚拟化环境中的应用
virtio-net驱动中的NAPI…
NAPI
虚拟化环境
24
NAPI性能调优
调整权重 · 调整合并参数 · 监控/proc/net/softne…
NAPI
性能调优
25
NAPI与XDP(Express Data Path)的关系
XDP在NAPI之前处理数据包
NAPI
XDP
26
NAPI与DPDK的对比
中断驱动与轮询驱动的设计哲学差异
NAPI
DPDK
27
中断与NAPI的调试工具
ftrace · perf · irqtop
NAPI
的调试工具
28
常见问题与故障排查
NAPI调度延迟 · 中断丢失 · CPU软中断占用过高
常见问题
故障排查
29
内核版本演进中的NAPI改进
NAPI的变体(如napi_comp… · busy poll
NAPI
内核版本演进
30
综合案例
从零分析一个真实网卡驱动(如e100…
综合案例
e100
所属VIP或分类
同VIP:Linux以太网MAC驱动开发与DMA收发调试
同VIP:Linux内核网络设备驱动中断处理与DMA传输协同
同VIP:Linux内核网络驱动NAPI与中断亲和性协同配置