传输过程:
1. 进程发出I/O请求,CPU加载控制信息到 设备控制器,进程放弃CPU(等待)
2. 设备控制器检查状态寄存器内容,根据I/O请求,执行相应的I/O操作,传输完成后发出中断信号
3. CPU收到并响应I/O中断后,转向处理该设备的I/O中断处理程序执行
4. 中断处理程序执行数据读取操作,将I/O缓冲寄存器的内容写入主存,将发出请求的进程设为就绪态,操作结束后退出中断处理程序,返回中断前的执行状态
5. 进程调度程序在适当时刻恢复原进程执行
特点:
I/O操作的完成还是需要CPU参与(中断处理程序中,在内存和缓冲区之间拷贝数据)。
缓冲区大小有限,装满了就会中断,中断次数可能很多。
不必忙式查询I/O准备情况,CPU和I/O设备可实现部分并行,与程序查询的串行工作方式相比,使CPU资源得到较充分利用。