MSI和MSI-X对比(五)

  1. MSI和MSI-X对比

从INTx过渡到MSI,可以说是完全两套天壤之别的中断上报架构。一个是带外,一个是带内。而MSI-X则是以MSI为基础发展起来的,很多特性很类似。MSI-X某种程度上可以看做的MSI的一个超集。它和MSI一样,可以生成Memory Write事务,来向中断控制器报告中断。

但是,MSI-X定义了一套新的capability structure,并且在Memory空间存储MSI-X中断地址表,可以处理更多的中断,也更灵活,在软件处理上也无法兼容MSI。

下面简单列表对比一下两者的差异:

对比项MSIMSI-X
Message Address存放在MSI相关配置空间存放在BAR空间MSI-X table structure
Message Data存放在MSI相关配置空间存放在BAR空间MSI-X table structure
Sataus相关存放在MSI相关配置空间存放在BAR空间PBA structure
每个设备支持的Vector数量322048
中断号连续?
  • 举个例子

说了这么多拿网卡举个例子吧。我们的I350网卡位于bus 3,device0,function 0。从配置空间可以看出网卡申请了一个BAR3,这正是MSI-X所使用的BAR3,MSI-X table structure存放在BAR3起始地址+0的位置,PBA structure存在BAR3起始地址+0x2000的位置。

 

我们来读一下该地址,发现使用的entry的message地址为LAPIC的地址。

  • 1
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值