【摘要】:在微型计算机系统中,各种外围设备操作都是通过I/O控制程序,使用控制设备或设备的控制器连接到处理机的各种I/O端口完成的。通常情况下硬中断是由Intel 8259A可编程中断控制器通过处理器的中断输入信号发起的,而软中断则来自于处理机内部。中断的触发即由于各种处理机内部或外部的原因产生中断请求的过程,而处理机对这个中断请求进行响应并转到中断处理程序进行处理的过程就是中断的处理。
在微型计算机系统中,各种外围设备操作都是通过I/O控制程序,使用控制设备或设备的控制器连接到处理机的各种I/O端口完成的。这种控制通常有两种方式:轮询并控制I/O端口和中断。
轮询方式实际上就是用一段程序轮番查询几个输入/输出设备的状态,并通过对I/O端口的直接控制实现对外围设备的操作。轮询方式的实现比较灵活,但查询等待的过程会浪费大量的处理机资源,使得处理机的开销增大,这就大大限制了轮询方式的适用范围。除了一些特殊场合之外,外围设备操作多数采用中断方式。
中断是一种使处理器暂停当前的工作,转出处理特殊事件的操作。在X86微机系统中,中断根据中断源的不同被分为硬中断和软中断两种。通常情况下硬中断是由Intel 8259A可编程中断控制器通过处理器的中断输入信号发起的,而软中断则来自于处理机内部。在基于X86处理机的微机系统中,除了第2章中介绍过的5种8086专用保留中断(0~4)之外,中断08~0F和中断70H~77H被用于硬件中断,这些中断由8259A芯片统一管理,其中断类型码由硬件连接所决定,无法改变。(www.xing528.com)
另外,中断20H~3FH被保留给DOS功能例行程序陷入(软中断),其余中断类型码供BIOS和其他应用软件使用(例如10H~1AH用于BIOS中断)。
中断包括两个过程:中断的触发和中断的处理。中断的触发即由于各种处理机内部或外部的原因产生中断请求的过程,而处理机对这个中断请求进行响应并转到中断处理程序进行处理的过程就是中断的处理。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。