Если тип ядра (64/32) не указывает на то, какой бит в вашем дистрибутиве, как мне узнать, что у меня работает?
Если тип ядра (64/32) не указывает на то, какой бит в вашем дистрибутиве, как мне узнать, что у меня работает? Я нахожусь на Ubuntu, и я только что обнаружил, к моему удивлению, вы можете использовать 64-битное ядро в 32-битном дистрибутиве Linux... так как я могу точно сказать, какой тип программного обеспечения я использую, 64-битный или 32 бит?
4 ответа
Просто запустите это в командной строке
getconf LONG_BIT
Вернется 32 или 64
Если вы не можете вспомнить ни одного из остальных, а я не могу, тогда работает следующий "трюк", просто выведите длину указателя в C/C++:
#include <iostream>
using namespace std;
int main( int argc, char *argv[] ) {
cout << sizeof( void *) << endl;
return 0;
}
Это даст "4" для 32-битной ОС (то есть 4 байта = 32 бита) и "8" для 64-битной ОС (т.е. 8 байтов = 64 бита).
С 32-битным ядром вы знаете, что все приложения должны быть 32-битными. С 64-битным ядром может быть любое сочетание 32-битных и 64-битных приложений и библиотек. Вы должны проверить приложения, которые вас интересуют, чтобы увидеть, к какому типу они относятся. Вы можете использовать file
Команда для проверки разрядности библиотеки или исполняемого файла.
cat /proc/version
cat /etc/issue
uname -a
в терминале должна отображаться полезная информация, чтобы уточнить, что вы запускаете на любом данном компьютере.
Я бы сказал, что очень редко, если у вас есть ядро, которое настроено не синхронизировано с программным обеспечением дистрибутива в целом, конечно, я никогда не сталкивался ни с кем, кто настроил бы его таким образом, так что обычно вы можете ожидать x86_64 представлять 64-битную операционную систему и ядро практически каждый раз, когда вы сталкиваетесь с этим.
Поскольку вы находитесь в Ubuntu, для любого данного программного обеспечения вы можете просто запустить:
apt-cache policy <packagename>
и найдите контрольные знаки, например, мои результаты для скайпа:
apt-cache policy skype
skype:
Installed: 4.2.0.11-0ubuntu0.12.04.1
Candidate: 4.2.0.11-0ubuntu0.12.04.1
Version table:
*** 4.2.0.11-0ubuntu0.12.04.1 0
500 http://archive.canonical.com/ubuntu/ precise/partner amd64 Packages
100 /var/lib/dpkg/status