2009-09-01 15 views
2

64ビットサポートのためにCore Solo/DuoとCore 2 Duoプロセッサを区別したいと思っています。 Core 2 DuoプロセッサでMac OS X Rubyで64ビットCPUを検出

必要に応じて、その後`sysctl hw.cpu64bit_capable`は、1を与えるが、32ビットプロセッサ上で、それは言って、エラーがスローされます。

second level name cpu64bit_capable in hw.cpu64bit_capable is invalid 

64ビットを検出するための最良の方法は何プロセッサー?

ありがとうございました。

答えて

4

コマンドの戻り値を確認しても、sysctlコマンドを使用できます。

$ irb 
>> system("sysctl hw.cpu64bit_capable > /dev/null 2>&1") 
=> true 

32ビットCPUの場合は、falseを返します。


代わりに、私はあなたのCPUはまだ64ビット、32ビットEFIとなると思うけれどもあなたは本当に、あなたがioregと64ビットのEFIのためにテストすることができ、探しているものによって異なります。 64ビットEFIマシンで

、あなたはこれを取得したい:64ビットEFIを欠いているマシンで

$ irb 
>> system("ioreg -l -p IODeviceTree | grep firmware-abi | grep -q EFI64") 
=> true 

は、あなたがfalseを取得したいです。

関連する問題