I/O系统的控制方式
I/O系统的控制方式有四种:程序直接控制、中断控制、DMA控制和通道控制。
1、程序直接控制(自己):
简介:遇I/O操作时,程序等待I/O操作完成后再继续往后执行。
评价:所有处理都需要CPU操作, CPU利用效率低。
2、中断控制(其他人):
简介:系统遇到非寻常或非预期的急需处理的事件时,CPU转去执行中断处理程序,执行完后返回。以字节为单位进行传输。
评价:常用,但输入输出数据都会发生中断,浪费CPU处理时间。
3、DMA控制(经理,CPU做总经理):
简介:I/O数据传送直接由DMA控制器完成,设备和主存之间可成批的进行数据交换,不用CPU干涉。适用于块设备的数据传输。
评价: CPU负担少。DMA以数据块的方式传输,虽比中断控制请求中断少,但没通道传输效率高。通道可在收到一次CPU I/O命令后完成一组数据块的I/O,比DMA节省CPU中断请求,更高效。
4、通道控制方式(总经理,CPU做董事长):
简介: CPU只需要发出启动指令,指出通道相应的操作和I/O设备,该指令就可以启动通道并使该通道从主存中调出相应的通道指令执行,完成一组数据块的I/O。
评价:CPU干预更少,可实现CPU、通道和I/O设备三者之间的并行操作,从而更有效地提高整个系统的资源利用率。通道控制方式适用于现代计算机系统中的大量数据交换。
通俗解释:通道控制方式就像一个取得巨大成就的企业家一样,企业的规模越来越大,成立了董事会,自己任董事长(CPU),然后聘请若干的总经理(通道)来负责不同类型的企业,总经理锁负责的企业又分成若干部门,由经理(设备控制器)负责各个部门的工作(I/O设备)。董事长只需发布一些更宏观的控制命令就可以管理整个企业了,从而提高了自己的工作效率。