首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >关于中断和中断处理的问题

关于中断和中断处理的问题
EN

Stack Overflow用户
提问于 2010-12-10 15:52:50
回答 2查看 797关注 0票数 1

您能告诉我硬件/驱动程序是如何引起中断的吗?在SMP中,哪个CPU会被中断?如果IRQ被多个设备共享,内核如何识别哪个设备引起了中断。

/Ganesh

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2010-12-11 21:26:35

传统上,有一条从设备到中断控制器的实际中断线路,当中断线路为高(或低,或沿)时,会生成中断,CPU开始执行中断处理程序。

在现代系统中,中断往往是总线上发送给中断控制器的消息(或者可能有几个)。

在更多细节方面,你需要更具体,细节根据你谈论的硬件类型而有所不同。

票数 1
EN

Stack Overflow用户

发布于 2012-06-27 16:21:49

中断处理程序也称为ISR,是操作系统设备驱动程序的一部分。在操作系统中,每个irq号代表来自中断控制器的一条中断线。

设备硬连线到中断控制器,如果设备中产生中断,中断控制器将向相应的CPU发出信号。中断目标CPU可在中断控制器中针对每个中断线路进行编程。

为了在硬件中共享中断号,如ARM中的GPIO,中断控制器或设备应为实际中断号提供额外的寄存器。此外,ISR应查询该寄存器以获取真实IRQ号。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4406729

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档