我在 Toshiba Satellite 上使用 Debian squeeze。我想确定我的 CPU 是 64 位还是 32 位。我在这里问这个问题是因为我现在非常困惑。以下是四个不同的 bash 命令的输出,这些命令允许用户准确查询(CPU 的宽度):
grep getconf LONG_BIT
返回 32;
grep /proc/cpuinfo
返回
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm 3dnowext 3dnow constant_tsc amdc1e nonstop_tsc extd_apicid pni monitor cx16 popcnt lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a 3dnowprefetch osvw ibs skinit wdt nodeid_msr
和这说如果lm
突出显示则表示我的 CPU 是 64 位;嗯,它没有突出显示。
lshw
返回两个不同的东西:32 位主板和 64 位处理器(我看到这篇文章并且我认为答案适用于我的情况。是吗?)最后lscpu
返回:
Architecture: i686
CPU op-mode(s): 64-bit
CPU(s): 1
Vendor ID: AuthenticAMD
CPU family: 16
Model: 6
Stepping: 3
CPU MHz: 800.000
Virtualization: AMD-V
L1d cache: 64K
L1i cache: 64K
L2 cache: 512K
总结一下:这里的结论是什么?我的 CPU 是 32 位还是 64 位?我知道我安装了 32 位 (i386) 内核,但除此之外,我需要知道我的处理器是什么。
答案1
这是适用于所有 Linux 发行版的通用命令:
grep -q '\<lm\>' /proc/cpuinfo && echo "My CPU is a 64 bits one" || echo "My CPU is a 32 bits one"
它是硬件信息:您可以在 64 位 PC 上运行 32 位发行版。命令将揭示真相。
答案2
根据Gentoo wiki 上的此页面,您的 CPU(系列 16、型号 6、步进 3)是 64 位。