| 
    
     |  | ▼ふくちゃんさん: >txtとスクリーンショットをupします。
 原因がわかりました。
 
 CPUID命令の出力は以下のようになっています。
 00000000 : 00000002 756E6547 6C65746E 49656E69
 00000001 : 000006F6 00020800 0000E3BD BFEBFBFF
 00000002 : 05B0B101 005657F0 00000000 2CB43049
 80000000 : 80000008 00000000 00000000 00000000
 80000001 : 00000000 00000000 00000001 20100000
 80000002 : 65746E49 2952286C 726F4320 4D542865
 80000003 : 43203229 20205550 20202020 20202020
 80000004 : 30303636 20402020 30342E32 007A4847
 80000005 : 00000000 00000000 00000000 00000000
 80000006 : 00000000 00000000 10008040 00000000
 80000007 : 00000000 00000000 00000000 00000000
 80000008 : 00003024 00000000 00000000 00000000
 
 物理コア数は 0x00000004 番に格納されているのですが、今回の結果では 0x00000002 までしか対応していないようです。BIOS で CPUID 命令の範囲を制限していることも考えられますがいかがでしょう?(NT4の不具合対策としてCPUID命令の範囲を制限することが可能なBIOSもあるらしいので・・・)
 
 とはいえ、このままというわけにもいかないので CPUID 命令を使って直接取得できない場合は適当な補正ルーチンを入れて対応したいと思います。
 
 |  |