我的硬件是 64 位还是 32 位?
这是我的 lscpu 命令的输出:
Mint ~ # lscpu
Architecture: i686
CPU op-mode(s): 32-bit, 64-bit
Byte Order: Little Endian
CPU(s): 1
On-line CPU(s) list: 0
Thread(s) per core: 1
Core(s) per socket: 1
Socket(s): 1
Vendor ID: GenuineIntel
CPU family: 6
Model: 60
Stepping: 3
CPU MHz: 3498.029
BogoMIPS: 6996.05
Hypervisor vendor: VMware
Virtualization type: full
L1d cache: 32K
L1i cache: 32K
L2 cache: 256K
L3 cache: 8192K
如您所见,我的架构是 32 位 i686。但它还具有 32 位和 64 位操作模式。这怎么可能呢。
另外,在 /proc/cpuinfo 中你可以看到 lm 被列出
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ss nx pdpe1gb rdtscp lm constant_tsc arch_perfmon xtopology tsc_reliable nonstop_tsc eagerfpu pni pclmulqdq ssse3 fma cx16 pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand hypervisor lahf_lm abm arat xsaveopt fsgsbase tsc_adjust bmi1 avx2 smep bmi2
那么我的 CPU 是 32 位还是 64 位?
答案1
i686 表示您正在使用 32 位操作系统。在终端中输入uname -a
。这是因为有些版本的 CPU 可以寻址超过 4GB(2^32)的 RAM。但这并不意味着 CPU 就是 64 位的。
你可以看看这个答案。这个问题在这里有详细的回答: Linux 上的 32 位、64 位 CPU 操作模式。
我希望这有帮助。