操作系统王道考研 p63 I/O控制方式:程序直接控制方式 中断驱动方式DMA方式通道控制方式
Posted karshey
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了操作系统王道考研 p63 I/O控制方式:程序直接控制方式 中断驱动方式DMA方式通道控制方式相关的知识,希望对你有一定的参考价值。
知识总览
IO控制方式就是用什么样的方式来控制IO设备的数据读写。
程序直接控制方式
- CPU说“我要读”。
- 检查控制器是否准备好
- 输入设备准备好后将数据传给控制器并告诉它自己准备好了
- 控制器收到数据后,把它放到数据寄存器,状态为改为0表示准备好了
- CPU知道设备们准备好了,就把数据寄存器中的数据读入CPU,再放到内存 中。
- 如果还要继续读,就重复第一步。
流程图:
我们要关注的点:
CPU要不停的轮询检查(即上述的第2步),长期属于忙等状态,利用率低。
每次读写一个字。
中断驱动方式
对程序直接控制方式的改进。由于程序直接控制方式CPU利用率低是因为“忙等”,这里CPU发出读写命令后就把该进程阻塞,这样就不会忙等。
我们要关注:
数据传送的单位:一个字
优点:CPU和IO设备可以并行。
缺点:若是频繁中断则消耗过多CPU的时间。
DMA方式
数据的传送单位——块。
直接从设备到内存或反之,中间不再需要CPU。
DMA控制器:
DMA控制器也是一种IO控制器。
优缺点:
优点:
数据传送单位:一个或多个块。
数据流向:不需要进过CPU。
效率增加,并发性提升。
缺点:
CPU每发出一条IO指令,只能读写一个或多个连续的数据块。
如果要读写多个离散的数据块,或要将数据分别写到不同的内存中,CPU要发出多个IO指令,进行多次中断 才行。
通道控制方式
通道:可以理解为弱鸡版的CPU,可以识别并执行一系列的通道指令。
通道像是一个功能完善,办事专业的CPU的小弟
优缺点:
优点:
每次读写一组数据块。
数据在通道的控制下运行。
CPU、通道、IO设备可并行工作,资源利用率很高。
缺点:
需要硬件、麻烦。
总结
四种方式其实可以理解为慢慢==“解放CPU”==的方法。
CPU被解放了(从一直参与,到最后参与一下下,委托(弱一点的)别人帮自己做事,委托(强一点的)别人帮自己做事),就可以去做更多的别的事情。资源利用率自然就高了。
且,传输单位越来越大 (字-字-块-一组块)。
通道:弱鸡版CPU
通道程序:任务清单
(通道程序可见上上张图右下角)
以上是关于操作系统王道考研 p63 I/O控制方式:程序直接控制方式 中断驱动方式DMA方式通道控制方式的主要内容,如果未能解决你的问题,请参考以下文章