DMA(Direct Memory Access / 直接存储器访问),负责IO设备与内存的数据传输
假设有这样一个场景: 从磁盘读取数据,通过网卡发送出去
无DMA
无DMA时,涉及4次拷贝,都需要CPU参与
有DMA
有DMA时,CPU只需要参与内存之间的2次拷贝,DMA负责内核空间与IO设备的拷贝
IO设备的速度极慢后,引入DMA,可以释放CPU的生产力,CPU只需要负责内存之间的拷贝。
DMA(Direct Memory Access / 直接存储器访问),负责IO设备与内存的数据传输
假设有这样一个场景: 从磁盘读取数据,通过网卡发送出去
无DMA时,涉及4次拷贝,都需要CPU参与
有DMA时,CPU只需要参与内存之间的2次拷贝,DMA负责内核空间与IO设备的拷贝
IO设备的速度极慢后,引入DMA,可以释放CPU的生产力,CPU只需要负责内存之间的拷贝。