Jestem na Ubuntu i wykonałem to polecenie:
$ uname -a
Linux slabrams-desktop 2.6.32-29-generic #58-Ubuntu SMP Fri Feb 11 19:00:09 UTC 2011 i686 GNU/Linux
Czy to oznacza, że korzystam z procesora 32-bitowego lub 64-bitowego?
Próbuję to rozgryźć, ponieważ dostaję błędy, które wyglądały tak:
cannot execute binary file
a od Googlinga myślałem, że to problem z procesorem. Jakieś pomysły?
architecture
Genadinik
źródło
źródło
Odpowiedzi:
Oznacza to, że używasz 32-bitowego jądra, co oznacza, że możesz uruchamiać tylko aplikacje 32-bitowe bez użycia emulatora lub wirtualizacji.
Jeśli chcesz sprawdzić, czy Twój procesor jest 64-bitowy, poszukaj
lm
flag wymienionych na liście/proc/cpuinfo
.źródło
lscpu
może być używany i jest bardziej przyjazny.Możesz użyć
lscpu
.Dalsze objaśnienie dziedziny architektury:
źródło
Można również sprawdzić architekturę binarny, który próbujesz uruchomić za pomocą pliku:
file filetocheck
. Wspomni on o wersji 32-bitowej lub 64-bitowej.źródło
Podstawowy pomysł:
x86_64 jest procesorem obsługującym 64 bity, a i386 ma 32 bity.
Z lscpu
Długa odpowiedź:
lscpu
Krótka odpowiedź
lscpu | awk '/CPU op-mode/ {print}
Wynik :
CPU op-mode(s): 32-bit, 64-bit
Z lshw
Długa odpowiedź: biegnij
sudo lshw
Nieco krótsza odpowiedź:
sudo lshw -c cpu
Wynik:
Jeszcze krótsza odpowiedź:
sudo lshw -c cpu | grep width
Wynik:
width: 64 bits
źródło
uname -p
podać architekturę procesora. Jeśli dajex86_64
, oznacza to, że procesor jest 64-bitowy.źródło