Pentium4の2.4GHzの入っているマシンがあります。このCPUが2.4Bか2.4CかLinux上で見分ける方法を教えてください。

回答の条件
  • URL必須
  • 1人2回まで
  • 登録:2004/01/28 11:00:10
  • 終了:--

回答(4件)

id:suikanonaraduke No.1

suikanonaraduke回答回数1014ベストアンサー獲得回数02004/01/28 11:09:15

ポイント18pt

http://www.itmedia.co.jp/enterprise/0211/28/n14_5.html

エンタープライズ:第1回 Linux上でなかなか動かないHT (5/6)

topコマンドを使用する方法が簡単です。

id:waf

現在、smp対応カーネルでないので、topではわかりません。/proc/cpuinfoは2.4Bでも2.4Cでも「ht」と表示されてしまうようで判別がつかなくて困っています。

2004/01/28 11:12:56
id:mi-si No.2

mi-si回答回数207ベストアンサー獲得回数02004/01/28 11:24:34

ポイント18pt

cat /proc/cpuinfo

で有る程度見分けは付きます。

flagsでhtのフラグをチェックすれば確実に2.4Cでしょう。

id:waf

手元にある2.4Bマシンでも/proc/cpuinfoにはhtフラグが出ているのです…。何か勘違いをしているのかもしれません。

他に何か方法があればご教示ください。

2004/01/28 11:54:02
id:aki73ix No.3

aki73ix回答回数5224ベストアンサー獲得回数272004/01/28 11:31:41

ポイント17pt

http://www.vector.co.jp/soft/dos/hardware/se128128.html

Vector:Memory Mapper for PC (MS-DOS / ハードウェア) - ソフトの詳細

EAX に値を入れて以下のマシン後コードを呼び出せば、CPU情報が取り出せますが2.4BとCが

区別できるかは不明です

xor eax,eax

db 0fh,0a2h;cpuid

上記URLはそれを利用した拙作のDOS用の CPU/memroy情報ツールです

id:waf

なるほど!と言いたい所ですが、スキル不足のためマシン語コードを実行させる術を持ちません。

教えていただいてありがとうございました。

2004/01/28 11:56:12
id:mi-si No.4

mi-si回答回数207ベストアンサー獲得回数02004/01/28 13:07:44

ポイント17pt

確実に見分けるにはプログラム的にCPUIDを直接取得するしかなさそうな感じですが、どうも、FSB800のPentium4は、cpuinfoで出てくるsteppingの値が9のようです。533のものは7が多いようです。

id:waf

ありがとうございます。steppingですね。見てみます。

試してみたところ、steppingは9でした。手元の他のBのマシンだと7でしたので、Cかなあ、と思いつつ、今回は終了させていただきます。

回答してくださったみなさん、どうもありがとうございました。

2004/01/28 14:27:16
  • id:aki73ix
    C言語からアセンブラコードを呼ぶ場合

    Lynux系もたしか、呼び出し方は同じだったと思います

    int __stdcall getcpudata(char *ret){
    __asm{
    cld
    push edi
    mov edi,ret
    xor eax,eax
    db 0x0f,0xa2 // CPUID
    mov eax,ebx
    stosd
    mov eax,edx
    stosd
    mov eax,ecx
    stosd
    mov al,0
    stosb
    xor eax,eax
    inc eax
    db 0x0f,0xa2 // CPUID
    pop edi
    }
    }

    呼び出し側
    int a;
    char str[20];
    a=getcpudata(str);

    strにCPUベンダデータ
    aにSteppingやTYPEの情報がかえります

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません