46

I have an M1 MacBook Pro and have downloaded both some native (ARM) and x86_64(Rosetta 2 emulated) binaries.

  1. How do I determine from the command line which of these ISAs a particular binary file is?
  2. Is there any way to know if a currently running program is running native or under Rosetta 2?

1 Answer 1

66

Run file on a binary:

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 

Activity Monitor shows the architecture of running programs:

enter image description here

3
  • 3
    Any command line alternative to show the architecture of running processes? Commented Nov 9, 2021 at 10:46
  • In Ventura 13.5.2 on M2, I do not see the Architecture column as a choice in the right click menu, nor does it appear by default. I do, however, see a "Kind" column that has "Apple" and "Intel" as row values. Commented Sep 10, 2023 at 17:51
  • I cant comment but ahd the same issue as @myer I think its its been renamed to "kind" It might be to do with Rossetta Stone not being supported past Big Sur (it might be built in now) Support for Rosetta was dropped with the release of Mac OS X Lion (10.7) in 2011. Rosetta 2, introduced in 2020 as a component of macOS Big Sur, is part of the Mac transition from Intel processors to Apple silicon, allowing Intel applications to run on Apple silicon-based Macs. ![screentshot](i.sstatic.net/AnAW5.png) Commented Feb 15, 2024 at 19:48

You must log in to answer this question.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.