Відповідь на запитання в заголовку є прямо на початку виходу:
64-бітний LSB - версію ELF , x86-64
ELF - це виконуваний та зв'язаний формат , формат бінарного виконуваного файлу, який найчастіше використовується Linux.
x86-64 - це архітектура двійкової, 64-розрядної версії набору інструкцій x86, спочатку запровадженої AMD . З причин, що не знаходяться поза мною, Microsoft називає це "x64", але це те саме.
Якщо вам потрібно знати архітектуру самого ядра, ви можете використовувати uname -mpi
. Наприклад, у моїй системі він друкує:
x86_64 невідомо невідомо
це означає, що я запускаю ядро x86-64.
Якщо вас цікавить сам процесор, перегляньте /proc/cpuinfo
детальну інформацію про процесори, виявлені ядром Linux.
32-бітний виконуваний файл 80x86 ідентифікується file
як, наприклад:
ELF 32-біт LSB виконуваними, Intel 80386 , версія 1 (SYSV), динамічно пов'язані (використання спільно LIBS), для GNU / Linux 2.6.8, роздягли
що говорить нам, що це 32-бітний виконуваний файл за допомогою набору інструкцій Intel 80386 (можливо, з розширеннями).
Зауважте, що це не так просто, як 32-розрядна та 64-бітна архітектура. Наприклад, підтримує ядро Linux 32-бітні архітектури, такі як Intel 80386, AVR32 , S / 390 та Unicore32 . Що стосується 64-бітної сторони речей, Linux може бути використаний на PA-RISC , x86-64, Itanium та Alpha , серед інших. Однак, не всі дистрибутиви надають бінарні файли для всіх архітектур (але, я сумніваюся, існують дистрибутиви, які однаково орієнтовані на всі підтримувані архітектури CPU). Отже, якщо ви хочете знати, чи буде виконаний даний бінарний файл у даній системі, вам потрібно врахувати архітектуру , а не розмір рідного слова процесора.