44

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

62

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?
    – Matteo
    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.
    – Myer
    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 at 19:48

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .