第10章:中断处理-13: The /proc Interface and Shared Interrupts

部署运行你感兴趣的模型镜像

In continuation of the previous text第10章:中断处理-12: Interrupt Sharing let's GO ahead.

The /proc Interface and Shared Interrupts

Installing shared handlers in the system doesn’t affect /proc/stat, which doesn’t even know about handlers. However, /proc/interrupts changes slightly.

All the handlers installed for the same interrupt number appear on the same line of /proc/interrupts. The following output (from an x86_64 system) shows how shared interrupt handlers are displayed:

系统中安装共享中断处理程序不会影响 /proc/stat—— 该文件甚至不记录中断处理程序的相关信息。但 /proc/interrupts 的输出会发生轻微变化。

为同一个中断号注册的所有处理程序,会显示在 /proc/interrupts 的同一行中。以下是来自 x86_64 系统的输出示例,展示了共享中断处理程序的显示方式:

         CPU0
 0: 892335412 XT-PIC timer
 1:    453971 XT-PIC i8042
 2:         0 XT-PIC cascade
 5:         0 XT-PIC libata, ehci_hcd
 8:         0 XT-PIC rtc
 9:         0 XT-PIC acpi
 10: 11365067 XT-PIC ide2, uhci_hcd, uhci_hcd, SysKonnect SK-98xx, EMU10K1
 11:  4391962 XT-PIC uhci_hcd, uhci_hcd
 12:      224 XT-PIC i8042
 14:  2787721 XT-PIC ide0
 15:   203048 XT-PIC ide1
NMI:    41234
LOC:892193503
ERR:      102
MIS:        0

This system has several shared interrupt lines.

IRQ 5 is used for the serial ATA and IEEE 1394 controllers;

IRQ 10 has several devices, including an IDE controller, two USB controllers, an Ethernet interface, and a sound card; 

IRQ 11 also is used by two USB controllers.

该系统存在多条共享中断线:

  • IRQ 5 被串行 ATA(libata)和 IEEE 1394 控制器(ehci_hcd)共享;

  • IRQ 10 被多个设备共享,包括 IDE 控制器(ide2)、两个 USB 控制器(uhci_hcd)、以太网接口(SysKonnect SK-98xx)和声卡(EMU10K1);

  • IRQ 11 被两个 USB 控制器(uhci_hcd)共享。

补充说明:

  1. /proc/interrupts 字段解读

    • 第一列:中断号(IRQ);

    • 中间列(如 CPU0):对应 CPU 处理该中断的累计次数(多 CPU 系统会显示多个 CPU 列);

    • 倒数第二列:中断控制器类型(如 XT-PIC,传统可编程中断控制器);

    • 最后一列:共享该中断的设备 / 驱动名称列表(以逗号分隔)。

  2. 共享中断计数的特点

    对于共享中断,/proc/interrupts 中的计数是该中断线的总触发次数,而非单个设备的中断次数。内核不会单独统计每个共享设备的中断次数,因此无法通过该文件判断某一设备的具体中断频率。

  3. /proc/stat 与中断的关联/

    proc/stat 仅记录系统级的中断统计(如 intr 字段记录所有中断的总次数),不区分中断号和处理程序,因此共享中断的安装或卸载不会改变其输出内容。

  4. 共享中断的调试意义

    ​​​​​​​通过 /proc/interrupts 可快速排查共享中断的问题:

    • 若某共享中断的计数异常飙升,可能是某设备故障导致频繁触发中断,影响其他共享设备;

    • 若某设备应产生中断但对应 IRQ 计数无变化,可能是中断共享配置错误(如未加 SA_SHIRQ 标志)或硬件未正确触发中断。

您可能感兴趣的与本文相关的镜像

ACE-Step

ACE-Step

音乐合成
ACE-Step

ACE-Step是由中国团队阶跃星辰(StepFun)与ACE Studio联手打造的开源音乐生成模型。 它拥有3.5B参数量,支持快速高质量生成、强可控性和易于拓展的特点。 最厉害的是,它可以生成多种语言的歌曲,包括但不限于中文、英文、日文等19种语言

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

DeeplyMind

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值