我的系统是 64 位的吗?

我的系统是 64 位的吗?
uname -m

给我

x86_64

,但

getconf LONG_BIT

给出

32

所以我的系统是 64 位还是 32 位?(它是 Gentoo,我没有 root 权限)

答案1

您的 CPU 是 64 位的。您的内核是 64 位的。其他东西是 32 位的,但很难说清楚是什么。也许getconf您路径中第一个出现的是 32 位的。查看/usr/libexec/getconf线索。

更新:听起来您主要拥有 32 位用户空间。也许有人只是安装了 64 位操作系统来支持超过 4GB 的物理内存。也许您有一些 64 位可执行文件。但现在很明显您拥有的是混合环境。

答案2

尝试一下arch,如果它打印 x86_64,则说明您有 64 位。由于您使用的某些应用程序是 32 位的,因此 LONG_BIT 的值是 32,在您的情况下,可能是编译为 32 位的 gcc。

所以你的 Arch 实际上是 64 位的,你可以运行 64 位应用程序,但你安装了 32 位 gcc。

答案3

我不记得你是否需要 root 权限才能读取 Gentoo 上的 make.conf,但请尝试

grep CHOST /etc/make.conf

如果你得到

CHOST="x86_64-pc-linux-gnu"

然后你的系统就设置为编译和安装 64 位软件包了。否则如果你得到

CHOST="i686-pc-linux-gnu"

然后你的系统就设置为32位了。

如果两者都没有,那么你可能需要 root 权限。考虑到你的uname情况,我预计你的系统是 64 位的。

相关内容