11

Possible Duplicate:
How do I know that my CPU supports 64bit operating systems under Linux?

I am running Debian Squeeze, how can I determine whether my processor is 64 or 32-bit? I'm thinking of downloading a 64-bit OS because it's said to perform better.

Zignd
  • 3,003
  • 10
  • 35
  • 48

1 Answers1

13

Type grep lm /proc/cpuinfo (lm stands for long mode)

Or just try booting with a 64-bit OS: if you do not have 64-bit support, it will say so and not boot.

lm: Long Mode (x86-64: amd64, also known as Intel 64, i.e. 64-bit capable)
djangofan
  • 4,002
  • 5
  • 21
  • 19
Renan
  • 16,976
  • 8
  • 69
  • 88
  • look what happen when i've used this comand – Zignd May 11 '12 at 12:34
  • The `lm` flag is there, that means your system supports 64-bit. – Renan May 11 '12 at 12:37
  • 1
    it's not true i tried uname -m and it show me i686 exactly as @cjc said – Zignd May 11 '12 at 12:41
  • 8
    `uname -m` refers to the architecture of the **currently running kernel**, if you'rre running a 32-bits kernel it will show `i686` even if you CPU supports 64-bit. – Renan May 11 '12 at 12:45
  • so it means my computer suport 64 bits, thanks for the answer – Zignd May 11 '12 at 12:49
  • 3
    @Zignd `uname -m` can even show `i686` to a process on an x86_64 processor running an x86_64 kernel, if the process (or an ancestor) called `setpersonality`. – Gilles 'SO- stop being evil' May 11 '12 at 23:11
  • @Gilles I didn't know about `setpersonality`. Very interesting – Renan May 11 '12 at 23:41
  • Try `uname -p` (as in `--processor`) per this Linux [*man page*](http://linux.die.net/man/1/uname) I stumbled upon with Google. Another fun diversion is `uname -a` and then try to remember which options correspond to which returned values. ;-) – irrational John May 12 '12 at 06:07