xwpcom
驱动牛犊
驱动牛犊
  • 注册日期2005-01-15
  • 最后登录2011-03-29
  • 粉丝1
  • 关注0
  • 积分72分
  • 威望13点
  • 贡献值0点
  • 好评度7点
  • 原创分0分
  • 专家分0分
阅读:2909回复:3

关于读取PCI配置的问题

楼主#
更多 发布于:2005-05-11 17:29
PCI规范中讲到,直接操作port读取PCI配置信息时,要求分别两步
第一步是向0xCF8写入要读取的位置
mov dx,0xCF8
mov eax,val
out dx,eax

第二步是从0xCFC读取所需要数据。
mov dx,0xCFC
in eax,dx
mov val,eax

这两部是分开的,在有多个线程都读取PCI配置信息时可能出一个线程执行完第一步后被挂起,假设它已向0xCF8写入var1.此时另一个线程执行,它向0xCF8写入var2后也被挂起,然后又轮到线程1执行,这样它得到的将会是var2的信息,而不是var1的信息。这肯定是个错误。

请问,实际情况是这样的吗?
请高人指点!
游客

返回顶部