![](https://static.youtibao.com/asksite/comm/h5/images/m_q_title.png)
DMA方式能处理高速外设与主存间的数据传送, 高速工作性能往往能覆盖低速工作要求,所以 DMA
![](https://static.youtibao.com/asksite/comm/h5/images/solist_ts.png)
假设某个主频为1GHZ的处理器需要从某个成块传送的I/O设备读取1000字节的数据到主存缓冲区中,该I/O设备一旦启动就按50KBps的数据传输率向主机传送1000字节的数据,每个字节的读、处理及送内存缓冲区共需要1000个时钟周期的时间,则以下四种方式下,在1000字节的读取过程中,CPU花费在该设备I/O操作上的时间分别为多少?这部分时间占处理器时间的百分比分别是多少?
(1)采用独占式查询方式,每次处理一个字节,一次状态查询需要60个时钟周期;
(2)采用中断I/O方式,外设每准备好一个字节发送一次中断请求。每次中断请求需要2个时钟周期,中断服务程序的执行需要1200个时钟周期;
(3)采用周期挪用的DMA方式,每挪用一次主存周期处理一个字节,一次DMA传送完成1000字节数据的传输,DMA初始化和后处理的总时间为2000个时钟周期,CPU和DMA没有访存冲突。
(4)如将外设的速度提高到5MBps,则上述三种方式中,哪些不可行,为什么?对于可行的I/O方式,计算机CPU花费在I/O操作上的时间占CPU时间的百分比。
A.没有问题发生
B.外设工作速度低于主存周期,主机效率受到限制
C.主机处于频繁的中断和过程中
D.A和B都会可能发生
A.当本次DMA传送的数据开始时,产生中断,请求CPU进行处理
B.DMA采用窃取总线控制权的方式
C.DMA方式用于高速外部设备与内存之间批量数据的传输
D.DMA方式不用CPU干预