Je suis sur Ubuntu et j'ai fait cette commande:
$ uname -a
Linux slabrams-desktop 2.6.32-29-generic #58-Ubuntu SMP Fri Feb 11 19:00:09 UTC 2011 i686 GNU/Linux
Est-ce que cela signifie que je suis sur un processeur 32 bits ou 64 bits?
La raison pour laquelle j'essaie de comprendre cela est que j'avais des erreurs qui ressemblaient à ceci:
cannot execute binary file
et de Google, je pensais que c'était un problème de processeur. Des idées?
Cela signifie que vous exécutez un noyau 32 bits, ce qui signifie que vous ne pouvez exécuter que des applications 32 bits sans utiliser d'émulateur ou de virtualisation.
Si vous voulez savoir si votre processeur est en 64 bits, recherchez lm
dans les indicateurs répertoriés dans /proc/cpuinfo
.
Vous pouvez utiliser lscpu
.
someuser@somelaptop:~$ lscpu
Architecture: i686 # <-- your kernel is 32 bit
CPU op-mode(s): 32-bit, 64-bit # <-- your cpu can handle 32 or 64 bit instructions
CPU(s): 4
Thread(s) per core: 2
Core(s) per socket: 2
CPU socket(s): 1
Vendor ID: GenuineIntel
CPU family: 6
Model: 37
Stepping: 5
CPU MHz: 1199.000
Virtualisation: VT-x
L1d cache: 32K
L1i cache: 32K
L2 cache: 256K
L3 cache: 3072K
Explication supplémentaire du domaine de l'architecture:
X86, i686, or i386 means you are running a 32 bit kernel.
X86_64 , AMD64 , or X64 means you are running a 64 bit kernel.
Vous pouvez également vérifier l'architecture du binaire que vous essayez d'exécuter en utilisant le fichier: file filetocheck
. Il mentionnera soit 32 bits ou 64 bits.
idée de base:
x86_64 est une unité centrale capable de 64 bits et i386 est de 32 bits.
avec lscp
Réponse longue: lscpu
Architecture: x86_64
CPU op-mode(s): 32-bit, 64-bit
Byte Order: Little Endian
CPU(s): 2
On-line CPU(s) list: 0,1
Thread(s) per core: 1
Core(s) per socket: 2
Socket(s): 1
NUMA node(s): 1
Vendor ID: AuthenticAMD
CPU family: 17
Model: 3
Stepping: 1
CPU MHz: 550.000
BogoMIPS: 4397.92
Virtualization: AMD-V
L1d cache: 64K
L1i cache: 64K
L2 cache: 512K
NUMA node0 CPU(s): 0,1
Réponse courte lscpu | awk '/CPU op-mode/ {print}
Sortie: CPU op-mode(s): 32-bit, 64-bit
avec lshw
Réponse longue: lancez Sudo lshw
Réponse légèrement plus courte: Sudo lshw -c cpu
Sortie:
*-cpu
description: CPU
product: AMD Turion(tm) X2 Dual-Core Mobile RM-75
vendor: Advanced Micro Devices [AMD]
physical id: 4
bus info: cpu@0
version: Turion X2 Mobile RM-75
slot: Socket M2/S1G1
size: 550MHz
capacity: 4GHz
width: 64 bits
clock: 200MHz
capabilities: fpu fpu_exception wp 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 rdtscp x86-64 3dnowext 3dnow constant_tsc rep_good nopl nonstop_tsc extd_apicid pni cx16 lahf_lm cmp_legacy svm extapic cr8_legacy 3dnowprefetch osvw skinit hw_pstate lbrv svm_lock nrip_save vmmcall cpufr
Réponse encore plus courte: Sudo lshw -c cpu | grep width
Sortie: width: 64 bits
uname -p
donne l'architecture du processeur. Si cela donne x86_64
, cela signifie que le processeur est à 64 bits.