
(1)为什么内核需要中断?

(2)硬件实现一个中断需要做什么?
注册就是告诉内核的存在;



(3)什么是快中断 什么是慢中断?
前者不允许发生中断嵌套






read属于中断上下文还是进程上下文?
中断上下文,进程上下文的区别?因为函数是由进程主动实现的,所以属进程上下文。
中断上下文属于硬件引起的。在中断处理函数中,没有所谓的进程的概念。所以不存在直接向用户空间发送消息,也不存在进程的调度,以及进程阻塞。


内核中记录中断的结构体

内核中断处理的入口,发生中断时,总入口函数asm_do_IRQ


#define irq_to_desc(irq) (&irq_desc[irq])


中断结构体irqaction成员:因为用户可以为一个中断分配多个处理函数(比如共享中断)。每个注册的处理函数都会用一个irqaction来表示

5.分析内核中断运行过程,以及中断3大结构体:irq_desc、irq_chip、irqaction(详解) - 诺谦 - 博客园
本文探讨了内核中断的必要性、硬件中断实现、快慢中断的区别,以及中断上下文和进程上下文的差异。重点介绍了中断处理流程、irq_desc、irq_chip和irqaction结构体的作用。通过实例讲解,揭示了中断在内核中的核心运作机制。
444

被折叠的 条评论
为什么被折叠?



