硬件结构-中断

什么是中断?什么是软中断?如何定位软中断CPU使用率过高的问题?什么是同步?什么是异步?

软中断类型

Linux中软中断包括:网络收发,定时,调度,RCU锁等类型。

  • cat /proc/softirq:观察软中断的累计中断次数;
  • watch -d cat /proc/softirq:实时查看中断次数的变化率;

软中断CPU使用率过高问题

  1. 判断是否是软中断CPU使用率过高问题:

通过 top命令,查看CPU使用情况,如果CPU在软中断上的使用率比较高,并且占据CPU使用率的主导地位,可以断定出现了软中断CPU使用率过高的问题。

  1. 分析是哪种软中断类型导致的:

使用 watch -d cat /proc/softirq命令查看所有软中断类型的中断次数变化率,变化率高并且快的中断类型即为要找的类型。

  1. 以Web服务器为例,当发现 NET_RX网络接受中断的变化速率相比其他快很多:
    • 定位网卡:使用 sar -n DEV查看网卡的网络包接收率情况,定位具体网卡;
    • 定位来源:使用 tcpdump抓包分析包的来源,如果是合法地址,考虑硬件升级,如果是非法地址,考虑增加防火墙;

硬件结构-中断
http://example.com/2025/05/12/OperatingSystem/硬件结构-中断/
作者
ZhangHangming
发布于
2025年5月12日
许可协议