Как узнать, работает ли мое ядро ​​Linux в 32- или 64-битной версии?

Как узнать, работает ли мое ядро ​​Linux в 32- или 64-битной версии?

Когда я выполняю команду cat в /proc/cpuinfo, она показывает строку с clflushsize: 64

Означает ли это, что мое ядро ​​работает в 64-битном режиме?

решение1

uname -a

покажет вам ядро, а конечный бит покажет вам архитектуру.

Два примера:

Мой мак:

Darwin Mac.local 9.8.0 Darwin Kernel Version 9.8.0: Wed Jul 15 16:55:01 PDT 2009; root:xnu-1228.15.4~1/RELEASE_I386 i386

Мой хостинг Dreamhost:

Linux ecco 2.6.24.5-serf-xeon-c6.1-grsec #1 SMP Tue Oct 7 06:18:04 PDT 2008 x86_64 GNU/Linux

i386 = 32 бита

x86_64 = 64 бит

решение2

uname -mдаст вам архитектуру, для которой скомпилировано ваше ядро. Если выводится, i686то ваше ядро ​​32-битное, если x86_6464-битное, при условии, что у вас чип Intel/AMD.

решение3

Я думаю, что наиболее точный способ — это

getconf LONG_BIT

здесь это точно показывает64

найдено на этомкончик

getconfиз пакета libc-bin (на Ubuntu)

решение4

Если вы хотите видеть только ту платформу, на которой вы работаете, вы можете использовать

uname -i

Полный список поддерживаемых опций uname:

$ uname --help
Usage: uname [OPTION]...
Print certain system information.  With no OPTION, same as -s.

  -a, --all                print all information, in the following order,
                             except omit -p and -i if unknown:
  -s, --kernel-name        print the kernel name
  -n, --nodename           print the network node hostname
  -r, --kernel-release     print the kernel release
  -v, --kernel-version     print the kernel version
  -m, --machine            print the machine hardware name
  -p, --processor          print the processor type or "unknown"
  -i, --hardware-platform  print the hardware platform or "unknown"
  -o, --operating-system   print the operating system
      --help     display this help and exit
      --version  output version information and exit

Связанный контент