DMA(Direct Memory Access / 直接存储器访问),负责IO设备与内存的数据传输
假设有这样一个场景: 从磁盘读取数据,通过网卡发送出去
无DMA
![](https://img.haomeiwen.com/i20803889/b802c81076480550.png)
无DMA时,涉及4次拷贝,都需要CPU参与
有DMA
![](https://img.haomeiwen.com/i20803889/710524951c832a89.png)
有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只需要负责内存之间的拷贝。
本文标题:DMA
本文链接:https://www.haomeiwen.com/subject/vgejddtx.html
网友评论