面试_操作系统_IO方式

186 阅读1分钟

轮询方式

又称程序直接控制方式,CPU询问设备控制器的状态,闲则传输数据,忙则继续查询。如果有多个设备,则轮流查询。这种方式,CPU是以轮询的方式来响应的。



中断方式

设备控制器当取到一个数据之后向CPU发送一个中断,CPU将数据从控制器取到CPU寄存器,再转移到内存中。这种方式,CPU是以字节的方式来响应的。



直接存储器访问(DMA)

DMA申请总线控制权,打开一条内存到设备的通道,模仿CPU来完成I/O存取。缺点是,有多少设备就需要多少DMA。这种方式,CPU是以数据块的方式来响应的。



I/O通道(通道控制器、I/O处理器)

IO通道相当于一个简单的处理机,有自己的指令,也可以执行指令。 一条IO通道可以连接所有的设备控制器。CPU向IO通道发出指令,IO通道将会自动进行获取数据。 这种方式,CPU是以多个数据块的方式来响应的。




以上I/O控制方式中,CPU的干预程度:(越多干预,效率越低)

程序I/O方式(轮询)> 中断方式(字节)> DMA方式(块)> 通道方式(几个块)