中断系列第二篇:中断的使用场景?

外部硬件的中断是通过两根信号线通知CPU的,这两根信号线就是INTR(INTeRrupt)和NMI(Non Maskable Interrupt)。

  • NMI中断,不可屏蔽中断,产生这个中断的时候,表示系统发生了致命的错误。

  • INTR可屏蔽中断。

那么要讨论这个应用得场景,就需要分不同的中断进行讨论。

1、NMI中断

1、应用场景:

  • watchdog

  • 调试、跨 PE 同步和热补丁

  • 操作系统依赖中断来支持性能分析

  • RAS事件处理

2、NMI在Linux的应用

当系统挂起,失去响应的时候,可以人工触发NMI,使系统重置,如果早已配置好了kdump,那么会保存crash dump以供分析。

有的服务器提供了NMI按钮,而刀片服务器通常不提供按钮,但可以用iLO命令触发。

Linux还提供一种称为”NMI watchdog“的机制,用于检测系统是否失去响应(也称为lockup),可以配置为在发生lockup时自动触发panic。

原理是周期性地生成NMI,由NMI handler检查hrtimer中断的发生次数,如果一定时间内这个数字停顿了,表示系统失去了响应,于是调用panic例程。

NMI watchdog的开关是通过内核参数 kernel.nmi_watchdog 或者在boot parameter中加入”nmi_watchdog=1″参数实现,比如:在RHEL上编辑 /boot/grub/menu.lst

Linux kernel笼统地把NMI分为三大类:

  • 内存校验错 mem_parity_error(),
  • 总线数据损坏 io_check_error(),
  • 其他的全部归入 unknown_nmi_error()

2、INTR中断

这个就很常见了,外设、软件、异常都有

参考资料:
https://blog.csdn.net/lglglgl/article/details/114042566
https://blog.csdn.net/weixin_42135087/article/details/127175004

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

TrustZone_Hcoco

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

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

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

打赏作者

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

抵扣说明:

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

余额充值