Xen中DMA传输解析

原文地址:http://blog.csdn.net/kevin_ut/article/details/25187703

一、地址种类(address type)

地址(address)有两种:


1. on-card device memory (Linux documentation里叫它做 bus memory) 
2. main memory (physical memory)


于是就需要有一个mapping 的机制,把它们映射起来,也叫做translate 过来。


一个例子是,从memory 的地址传输(transfer)到网卡的buffer 里,然后网卡再把buffer里的数据发送出去,这样来实现网络传输。那么,buffer里就有一个buffer 地址,它是与main memory 地址是不同的,例如main memory 是用64位地址,e.g., 0x1234FFFF5678EEEE, 而buffer 地址只有16位,e.g., 0x5678, 因此,这里需要有一个mapping的机制在起作用。


问题:
1. 如果有mapping, 那是不是说 on-card memory 与 physical memory 的一个duplicate 呢?如何保持它们的同步更新呢?


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值