互联网各领域资料分享专区(不定期更新):
最近有粉丝在后台问了一个特别有意思的问题:“计算机课上老师说DMA负责外设和内存的拷贝,但论文里又说外设用PCIe传输数据给CPU,这俩到底啥区别?”
这个问题看起来简单,但仔细一想,确实容易让人懵圈!今天咱们就用最接地气的方式,把这俩“技术黑话”掰开了揉碎了讲清楚。
先来点灵魂拷问:你家的快递是怎么送的?
想象一下,你网购了一箱零食。这时候有两种送货方式:
-
快递小哥直接扔你家门口(不需要你开门)
-
快递小哥按门铃,你亲自下楼取货
DMA传输就像第一种情况:外设(比如硬盘、显卡)和内存之间的数据搬运,完全不需要惊动CPU这个“大忙人”。DMA控制器自己就能把数据直接怼进内存,CPU该刷剧刷剧,该打游戏打游戏,两不耽误。
而PCIe传输更像是那条快递小哥走的高速公路。它不关心快递是谁送的,只负责提供一条超宽车道,让数据能以超快的速度(比如PCIe 4.0的16GB/s)在CPU、内存、外设之间来回跑。
技术老司机的真相时间