郝海东斗鱼直播:DMA(direct memory access)控制方式

来源:百度文库 编辑:九乡新闻网 时间:2024/04/28 18:31:33
1、DMA控制方式的引入
       中断方式是以字节(字)为单位进行I/O的, 每完成一个字节(字) CPU要处理一次中断, 这种方法用于块设备效率极低, 为了进一步减少CPU对I/O的干预, 提高CPU与I/O设备的并行度引入DMA控制方式。
    DMA方式的特点为:
 数据传送的基本单位是数据块。
 数据是直接在设备─内存之间传送的。
 仅在传送一个或多个数据块的开始和结束时才需要CPU对I/O的干预, 传送工作本身是由DMA控制器完成的。2、DMA控制器的组成
(1)主机与DMA控制器的接口
           数据寄存器(DR)         内存地址寄存器(MAR)
           数据计数器(DC)         命令/状态寄存器(CR)
(2)DMA控制器与块设备的接口
(3)I/O控制逻辑3、DMA方式从磁盘读入数据块的工作流程:
 4、DMA工作原理——窃取总线控制权       (1)存放输入数据的内存起始地址、要传送的字节数送入
                   DMA控制器的内存地址寄存器和传送字节计数器;
                  中断允许位和启动位置成1, 启动设备。       (2) 发出传输要求进程进入等待状态,其他进程占据CPU。       (3)DMA控制器不断窃取总线控制权, 数据不断写入内存。       (4)传送完毕, 发出中断信号。       (5)CPU接到中断信号转入中断处理程序处理。       (6)中断处理结束, CPU返回原进程或切换到新的进程。5、 DMA方式与中断的主要区别
      (1)中断方式的数据传送到存储器是由CPU控制完成的。
                 而DMA方式的数据传送到存储器则不经过CPU , 由DMA控制器直接完成。
      (2)中断方式在设备控制器的数据缓冲寄存区满后, 发中断请求, CPU进行中断处理将缓冲区数据传送到内存。
                 而DMA方式则是在所要求传送的数据块全部传送到内存结束时, 发中断请求, CPU进行中断处理。
                大大减少了CPU进行中断处理的次数和时间。