Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion network/1_base/how_os_deal_network_package.md
Original file line number Diff line number Diff line change
Expand Up @@ -88,7 +88,7 @@ TCP/IP 网络模型相比 OSI 网络模型简化了不少,也更加易记,
硬件中断处理函数会做如下的事情:

- 需要先「暂时屏蔽中断」,表示已经知道内存中有数据了,告诉网卡下次再收到数据包直接写内存就可以了,不要再通知 CPU 了,这样可以提高效率,避免 CPU 不停的被中断。
- 接着,发起「软中断」,然后恢复刚才屏蔽的中断。
- 接着,发起「软中断」,但**不会在硬件中断处理函数里立刻恢复刚才屏蔽的中断** —— 在 NAPI 机制下,网卡中断会保持屏蔽,直到软中断通过轮询把 Ring Buffer 里的网络包处理完(napi_complete 收尾)才重新开启,避免软中断还在排队执行时又被硬件中断打断,退化成纯中断模式甚至引发中断风暴。

至此,硬件中断处理函数的工作就已经完成。

Expand Down