O que significa i386 no macOS Mojave?


12

Eu estou em uma segunda mão MacBook Pro a partir do final de 2013 (Mojave 10.14.3) e quando eu digito archno terminal, eu voltar i386. Não deveria ser um x86_64? O vendedor deturpou o item? Por favor, veja a imagem abaixo de 'Sobre este Mac' . captura de tela

Respostas:


15

De acordo com esta resposta do SO , archdistingue entre PowerPC ( ppc) e Intel ( i386), não entre kernels de 32 e 64 bits no x86. Portanto, neste contexto, i386significa uma CPU x86.

Verifique a saída de uname -mpara descobrir o seu tipo de máquina. (No Linux, arché o equivalente a uname -m.)

Veja também estas perguntas e respostas diferentes .


Sim! Eu fiz uname -me isso me deu x86_64. Então eu acho que é uma arquitetura de CPU de 64 bits. Eu tentei archapenas experimentar um cmd que eu havia encontrado enquanto estudava para obter uma certificação Linux.
— WobblyWindows

14

Em um sistema macOS, como em outros sistemas BSD, você deve usar o machineutilitário:

$ arch
i386
$ machine
x86_64h

O i386é enganosa se você está acostumado a archutilidade em outros sistemas. No macOS Mojave, i386significa que ele é capaz de executar software de 32 bits compilado para a família de processadores Intel. Observe que o archutilitário no macOS é usado para coisas bem diferentes em comparação com, por exemplo, no Linux (consulte o manual).

Você também pode usar uname -mcomo no Linux:

$ uname -m
x86_64

5
Para não tornar uma montanha de montanha, mas AFAIK, não há documentação da Apple para indicar que a i386designação implica que ela é capaz de executar software de 32 bits ... man archcertamente não sugere isso. IMHO, a Apple acabou de lançar a bola e permitiu que as coisas ficassem um pouco confusas - talvez em nome da compatibilidade com versões anteriores?
— Seamus

3

Eu sinto que usando os utilitários "tradicionais" (por exemplo arch, uname, sw_vers) para descobrir o seu hardware ou software do Mac pode não ser muito confiável. É certamente inconsistente! Até os manuais do sistema estão repletos de inconsistências.

Isso não quer dizer que você não possa obter informações úteis desses utilitários, mas apenas que, a menos que saiba o que está procurando, poderá obter resultados diferentes dos obtidos em outros sistemas.

Por exemplo:

$ arch
i386

Não! (A menos que você esteja usando um computador muito antigo.)

Outro exemplo é a versão do sistema operacional. man sw_verse man unameambos afirmam relatar "Versão do SO":

$ sw_vers
ProductName:    Mac OS X
ProductVersion: 10.14.4
BuildVersion:   18E226

$ uname -v
Darwin Kernel Version 18.5.0 ....  # output snipped 

O que é ótimo - sabemos que a numeração das versões de kernel e distribuição é diferente, mas os manuais do sistema para esses dois comandos dizem que você recebe OS Version. Compreender a gênese da correntemacos explica um pouco disso, mas não explica por que os manuais do sistema são inconsistentes.

E assim, para a pergunta do OP sobre como obter informações claras e confiáveis ​​em um sistema, acho que a resposta deve ser o uso system_profilerde hardware e software:

$ system_profiler SPHardwareDataType
Hardware:

    Hardware Overview:

      Model Name: MacBook Pro
      Model Identifier: MacBookPro13,3
      Processor Name: Intel Core i7
      Processor Speed: 2.9 GHz
      Number of Processors: 1
      Total Number of Cores: 4
      L2 Cache (per Core): 256 KB
      L3 Cache: 8 MB
      Memory: 16 GB
      Boot ROM Version: 254.0.0.0.0
      SMC Version (system): 2.38f7
      Serial Number (system): C02*********
      Hardware UUID: ********-****-****-****-************

$ system_profiler SPSoftwareDataType
Software:

    System Software Overview:

      System Version: macOS 10.14.4 (18E226)
      Kernel Version: Darwin 18.5.0
      Boot Volume: Macintosh HD
      Boot Mode: Normal
      Computer Name: MacBook No 2
      User Name: Seamus (seamus)
      Secure Virtual Memory: Enabled
      System Integrity Protection: Enabled
      Time since boot: 13:13

Além disso, o manual do sistema system_profilerparece ser mantido em um estado mais atual.

E, finalmente, quanto à pergunta principal : "O que [a saída de arch] i386 significa no macOS Mojave?" . Resposta: Infelizmente, isso significa que a Apple não manteve sua documentação e / ou aplicativos corretamente.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.