1. 程序循环查询方式
消耗CPU特别多;除非是对时间要求极严的应用,否则一般不用
2. 中断处理方式
在IO控制器或设备发出中断请求时,CPU通过使用中断特向量表(或中断描述符表)来寻址相应的中断处理服务过程的入口地址。
因此采用中断控制方式时需要首先设置好中断向量表,并编制好相应的中断处理服务过程。 linux操作系统中大多数设备IO采用此方式
3. DMA(以下为转载内容)
DMA方式具有如下特点:
1、 外部设备的输入输出请求直接发给主储存器。
主存储器既可以被CPU访问,也可以被外围设备访问。因此,在主存储器中通常要有一个存储管理部件来为各种访问主存储器的申请排队,一般计算机系统把外围设备的访问申请安排在最高优先级。
2、 不需要做保存现场和恢复现场等工作,从而使DMA方式的工作速度大大加快。
由于在外围设备与主存储器之间传送数据不需要执行程序,因此,也不动用CPU中的数据寄存器和指令计数器等。
3、在DMA控制器中,除了需要设置数据缓冲寄存器、设备状态寄存器或控制寄存器之外,还要设置主存储器地址寄存器,设备地址寄存器和数据交换个数计数器。
外围设备与主存储器之间的整个数据交换过程全部要在硬件控制下完成。另外,由于外围设备一般是以字节为单位传送的,而主存储器是以字为单位访问的,因此,在DMA控制器中还要有从字节装配成字和从字拆卸成字节的硬件。
4、在D