I/O设备分类
- 机械部件
- 电子部件(I/O控制器、设备控制器)
一个I/O控制器可能要对应多个设备,而每个寄存器都要有相应的地址,根据地址存放的位置不同可以分为内存映射I/O和寄存器独立编制
I/O控制方式
以下几种方式由上至下不断完善,整个过程就是尽量减少CPU对I/O的干预,将CPU从繁杂的I/O事务中解脱出来,以便达到更高的CPU利用率
-
程序直接控制方式
每次读一个字的数据,在等待I/O完成的过程中CPU需要不断轮询检查 -
中断驱动方式
每次读一个字的数据,CPU发出命令后可以去处理其他事务,I/O完成后由设备控制器发出中断信号,CPU和I/O设备可以并行工作 -
DMA方式
每次读一个块的数据,在内存和I/O设备之间开辟直接数据通路,只在数据传输开始和结束时需要CPU干预,I/O完成后由DMA控制器发出中断信号, -
通道控制方式
每次读一个组的数据块,是在DMA方式基础上进行的传送数据量升级,I/O完成后由通道发出中断信号
I/O子系统的层次结构
设备独立性软件
- 设备独立也称设备无关,即所有跟硬件无直接关系的操作都在这一层实现
设备驱动程序
- 与硬件直接相关,负责具体实现系统对设备发出的操作指令,驱动I/O设备工作的程序