上述两类中断又被总称为硬件中断,它是针对所谓的软件中断而言的,即由写在程序中的语句(例如用户程序中的系统调用指令,trap指令等)引起的一段程序的执行过程,它很类似于一次中断处理过程,故又称其为软件中断。这里说的软件中断是严格的与程序运行过程同步的,而硬件中断则是随机发生的。从CPU要不要接收中断请求,从能不能限制某些中断发生的角度,又可以把中断分成可屏蔽中断和不可屏蔽中断,那些可以被CPU通过指令限制其发出中断请求(称为屏蔽中断)的中断属于可屏蔽中断,例如对某些外围设备就可以在一段时间里执行屏蔽中断,对另外一些中断是不允许执行屏蔽中断的,例如电源掉电中断,称这类中断为不可屏蔽中断。如果由于某种事件的存在,在很短的一小段时间内,不允许CPU接收任何一个中断请求(禁止中断),靠屏蔽全部中断是不可取的,通常是在CPU内部设置一个"中断允许"触发器,只有该触发器被置为"1"状态,才允许CPU响应中断请求,该触发器被置为"0"状态,则禁止CPU响应中断请求。为此,在指令系统中,要给出"开中断"指令(置"1"中断允许触发器)和"关中断"指令(清"0"中断允许触发器)。

  为了管理众多的中断请求,需要按每个(类)中断处理的急迫程度,对中断进行分级管理,称其为中断优先级。在有多个中断请求时,总是首先响应与处理优先级最高的一个中断请求。如果CPU正在处理优先级低的一个中断,又来了优先级更高的一个中断请求,该如何处理呢?通常的处理办法,是停止低优先级的中断处理过程,以便及时响应更高优先级的中断请求,在该高优先级中断处理完成之后,接下来再继续处理低优先级的中断,在该低优先级中断处理完成之后,返回去接着执行主程序。这种在处理中断的过程中又可以响应更高优先级中断的办法被成为中断嵌套。