44 votes

Comment déterminer si un programme MacOS sur Apple Silicon est émulé x86 ou natif ARM à partir de la ligne de commande ?

J'ai un MacBook Pro M1 et j'ai téléchargé des binaires natifs (ARM) et x86_64 (Rosetta 2 émulé).

  1. Comment puis-je déterminer, à partir de la ligne de commande, à quel type d'ISA appartient un fichier binaire particulier ?
  2. Existe-t-il un moyen de savoir si un programme en cours d'exécution fonctionne natif ou sous Rosetta 2 ?

62voto

negacao Points 984

Exécuter un fichier sur un binaire :

krismatth@KristophersMBP3 ~$ file /bin/bash
/bin/bash: Mach-O universal binary with 2 architectures: [x86_64:Mach-O 64-bit executable x86_64] [arm64e:Mach-O 64-bit executable arm64e]
/bin/bash (for architecture x86_64):    Mach-O 64-bit executable x86_64
/bin/bash (for architecture arm64e):    Mach-O 64-bit executable arm64e

Le moniteur d'activité montre l'architecture des programmes en cours d'exécution :

enter image description here

3 votes

Une alternative en ligne de commande pour afficher l'architecture des processus en cours d'exécution ?

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X