Estou executando 32 bits ou 64 bits?

2

Eu sei que essa pergunta foi feita várias vezes, mas meu sistema parece se contradizer ...

Seguindo a resposta para esta questão, eu corri o seguinte:

$ uname -a
Linux manaha 3.13.7-x86_64-linode38 #1 SMP Tue Mar 25 12:59:48 EDT 2014 x86_64 x86_64 x86_64 GNU/Linux
$ file /sbin/init
/sbin/init: ELF 32-bit LSB shared object, Intel 80386, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.24, BuildID[sha1]=0xc0d86a25a7abb14cad4a65a1f7d03605bcbd41f6, stripped

Assim, enquanto uname parece sugerir 64 bits, /sbin/init sugere 32 bits. O que está acontecendo aqui?

    
por forquare 20.04.2014 / 17:29

2 respostas

2

Na computação, o formato executável e vinculável (ELF) é um formato de arquivo padrão comum para executáveis, código de objeto, bibliotecas compartilhadas e dumps principais. Na sua pergunta /sbin/init: ELF 32-bit LSB shared object identifica o ELF como o formato de um objeto compartilhado de 32 bits de uma biblioteca compartilhada. Seu sistema operacional é um sistema operacional de 64 bits que possui um objeto compartilhado de 32 bits em algum lugar. Não há contradição nisso.

    
por karel 20.04.2014 / 17:47
0

Enquanto o comando uname informa algo sobre o seu sistema, o comando file informa algo sobre um arquivo. Portanto, o comando file diz que "init" é um arquivo de 32 bits e o comando uname diz que você tem um computador de 64 bits. Eu espero que isso ajude.
Por favor, assinale todos os erros que cometi o mais rápido possível , para o caso de causar algum dano.
PS você leu as outras respostas para o post que você está ligando? Essa resposta parece ser uma maneira muito fácil de descobrir sua arquitetura: link

    
por Leo2807 20.04.2014 / 17:55