gpt4 book ai didi

ruby - 在 Mac OS X 上检测 Ruby 中的 64 位 CPU

转载 作者:数据小太阳 更新时间:2023-10-29 08:42:05 24 4
gpt4 key购买 nike

我希望区分 Core Solo/Duo 和 Core 2 Duo 处理器以支持 64 位。

在 Core 2 Duo 上,`sysctl hw.cpu64bit_capable` 根据需要给出 1,但在 32 位处理器上,它抛出错误,说:

second level name cpu64bit_capable in hw.cpu64bit_capable is invalid

检测 64 位处理器的最佳方法是什么?

谢谢。

最佳答案

您仍然可以通过查看命令的返回值来使用您的 sysctl 命令。

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

在 32 位 CPU 上它应该返回 false


或者,根据您的实际需求,您可以使用 ioreg 测试 64 位 EFI,但我认为您的 CPU 可能仍然是 64 位且具有 32 位 EFI。

在 64 位 EFI 机器上,你会得到这个:

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

在没有 64 位 EFI 的机器上,你会得到 false

关于ruby - 在 Mac OS X 上检测 Ruby 中的 64 位 CPU,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1365189/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com