数据的传输方式

IO设备与主机信息传送的控制方式
1.程序查询方式
一般来说,设备的速度较慢,外部设备接受的CPU的指令以后,开始进行数据准备,经过了一个较长时间,数据才能准备好,数据准备好以后,设备将数据传送到IO接口当种的数据缓冲,然后将工作准备标志置为工作准备好,只有CPU读取到接口准备好以后,才能通过接口将数据先读入到CPU某个寄存器当中,然后再将数据传送的内存当中。
在这种方式当中,当数据在准备的时候,CPU一直处于忙等的状态,并且CPU一手拖着两家(内存和IO接口),信息交换必须通过CPU来做,外部设备比较慢,CPU比较快。

2.程序中断方式
这种方式CPU被一定程度的在数据的输入输出工作中解放出来
IO工作可以看成2部分,第一,自身的准备;第二,与主机交换信息
在IO进行自身准备的时候,CPU不查询
在IO与主机进行交换信息的时候,暂停现行程序
在这种方式下,CPU没有进行原地踏步等待,是由IO主动的发出中断请求信号,请求CPU协助完成数据的输入输出操作。在这种方式当中,在外部设备进行数据准备的时候,CPU依然在执行主程序,在程序查询方式里的这部分时间,CPU是在原地踏步等待的。在数据要开始传输了,CPU才暂停掉主程序,转而进行输入输出操作。
但是在这种情况下,对CPU的解放并不彻底,而且,在CPU要传输数据的时候,CPU要保护现场,在中断返回的时候,CPU要恢复现场,这些也是需要时间的。如果在IO和CPU之间要传输的数据量非常小,可能会需要十几条或者几十条指令来完成现场的保护或者是现场的回复工作,依然要消耗CPU较大的时间。

3.DMA方式
中断方式的链接关系,内存和外设在两边CPU在中间,外部设备和住存之间要进行数据交换必须要CPU参与。所以在数据的传输过程中依然需要CPU来做,CPU需要通过执行程序的方式对主机进行输入和输出,而DMA方式将CPU进一步的从数据的输入输出种解放出来。
这种方式在内存和IO之间建立了之间的通路,内存和IO可以直接进行数据的交换,不需要中断现行程序,它采用的方法是周期窃取,CPU需要将总线权让出。因为两个部件之间信息交互需要占用总线。
但是在这种方式里,CPU还可以继续的执行不需要访存的指令,因为现代计算机系统中都有指令缓存器和数据缓存器

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值