cpuid函数0Bh,intel,总是空寄存器

时间:2013-01-30 14:00:03

标签: assembly x86 cpuid

在Linux(作为root)和Windows(XP,作为管理员)上,在使用eax = 0xB调用cpuid之后,我总是得到一个空的寄存器集。 根据官方手册,http://www.intel.com/content/www/us/en/processors/processor-identification-cpuid-instruction-note.html我写了以下代码:

mov eax,0xb
xor ecx,ecx
cpuid
; EAX = EBX = ECX = EDX = 0

我已经在此之前基于'cpuid'指令成功编写了AMD cpuinfo,但是intel的0xb函数不起作用。尝试了两台可用的英特尔电脑而没有运气。我在这里缺少什么?

1 个答案:

答案 0 :(得分:-1)

首先检查功能可用性,参见手册5.1.2,功能01。

然而,这并没有回答枚举实际CPU内核的问题,这是我的意图。如果有人不懒,请在评论中分享您对此主题的发现,谢谢。

相关问题