公 在上述中断响应及处理的6项操作中,前3项是中 断响应过程,一般由中断系统硬件负责完成 后3项是中断处理过程,通常是由用户或系统程序 设计者编制的中断处理程序(软件)负责完成。 针对一个具体的系统或机型,中断服务程序设计 者应该清楚该系统在中断响应时,中断响应硬件 完成了哪些操作(如程序状态字PSW是否已被压入 堆栈),还需中断处理软件(中断服务程序)完 成哪些操作
• 在上述中断响应及处理的6项操作中,前3项是中 断响应过程,一般由中断系统硬件负责完成; • 后3项是中断处理过程,通常是由用户或系统程序 设计者编制的中断处理程序(软件)负责完成。 • 针对一个具体的系统或机型,中断服务程序设计 者应该清楚该系统在中断响应时,中断响应硬件 完成了哪些操作(如程序状态字PSW是否已被压入 堆栈),还需中断处理软件(中断服务程序)完 成哪些操作
公 3.中断优先级和中断嵌套 (1)中断优先级 在实际系统中,多个中断请求可能同时出现,但 中断系统只能按一定的次序来响应和处理,这时 CPU必须确定服务的次序,即根据中断源的重要 性和实时性,照顾到操作系统处理的方便,对中 断源的响应次序进行确定。 这个响应次序称为中断优先级( priority)
3. 中断优先级和中断嵌套 (1) 中断优先级 • 在实际系统中,多个中断请求可能同时出现,但 中断系统只能按一定的次序来响应和处理,这时 CPU必须确定服务的次序,即根据中断源的重要 性和实时性,照顾到操作系统处理的方便,对中 断源的响应次序进行确定。 • 这个响应次序称为中断优先级(priority)
公 ·通常,可用软件查询法确定中断优先级,也可用 硬件组成中断优先级编码电路来实现 现代PC机中多采用可编程中断控制器(如8259A) 来处理中断优先级问题 1)软件查寻法确定中断优先级 釆用软件查询法解决中断优先级只需要少量硬件 电路。如图17.1所示,系统中有多种外部设备, 将这些设备的中断请求信号相“或”,从而产生 个总的中断请求信号|NTR发给CPU
• 通常,可用软件查询法确定中断优先级,也可用 硬件组成中断优先级编码电路来实现。 • 现代PC机中多采用可编程中断控制器(如8259A) 来处理中断优先级问题。 1) 软件查寻法确定中断优先级 • 采用软件查询法解决中断优先级只需要少量硬件 电路。如图17.1所示,系统中有多种外部设备, 将这些设备的中断请求信号相“或”,从而产生一 个总的中断请求信号INTR发给CPU
公 图17.1软件查询接口电路 NTR 电磁磁cR带留盘印 纸保键打 源盘带显示 输输 故障 输入 入出
图17.1 软件查询接口电路 磁 盘 磁 带 CRT 显示 键盘输 入 打 印 输 出 电 源 故 障 纸 带 输 入 保 留 INTR
公 当CPU响应中断请求进入中断处理程序后,必须 在中断处理程序的开始部分安排一段带优先级的 查询程序,查询的先后顺序就体现了不同设备的 中断优先级,即先查的设备具有较高的优先级, 后查的设备具有较低的优先级。 般来说总是先查讯速度较快或是实时性较高的 设备 软件查询的流程如图172所示
z 当CPU响应中断请求进入中断处理程序后,必须 在中断处理程序的开始部分安排一段带优先级的 查询程序,查询的先后顺序就体现了不同设备的 中断优先级,即先查的设备具有较高的优先级, 后查的设备具有较低的优先级。 z 一般来说总是先查讯速度较快或是实时性较高的 设备。 z 软件查询的流程如图17.2所示