天天看点

linux软中断 区别,软中断与硬中断之间的区别是什么?

软中断与硬中断之间的区别是:

1、硬中断是由外部事件引起的因此具有随机性和突发性;软中断是执行中断指令产生的,无外面事件中断请求信号,因此软中断的发生不是随机的而是由程序安排好的。

2、硬中断的中断号是由中断控制器提供的(NMI硬中断号系统指定的为02h);软中断的中断号是由指令直接给出的,无需使用中断控制器。

3、硬中断的中断响应周期,CPU需要发中断回合信号(NMI不需要),软中断的中断响应周期,CPU不需要发中断回合信号。

4、硬中断是可屏蔽的(NMI硬中断不可屏蔽),软中断是不可屏蔽的。

什么是NMI

NMI(non maskable

interrupt)--不可屏蔽中断(即CPU不能屏蔽)无论状态寄存器中IF位的状态如何,CPU收到有效的NMI必须进行响应;NMI是上升沿有效,中端型号固定为2;它在被响应时无中断响应周期,不可屏蔽中断通用于故障处理(如:协处理器运算出错,存储器校验出错,I/O通道校验出错等);

中断响应周期:

中断响应周期是指当CPU采用中断方式实现主机与I/O交换信息时,CPU在每条指令执行阶段结束前,都要发中断查询信号,以检测是否有某个I/O提出中断请求,如果有请求,CPU则要进入中断响应阶段,又称为中断周期。