11

Is it possible to emulate a macOS machine with RISC/ARM architecture on a physical x86 macOS machine? I suspect this is of value for those hoping to test the viability of their workflows on Apple silicon. In such cases, a performance penalty is of no consequence.

The only discussion I can find is here, though I don't find it particularly convincing or authoritative.

2
  • Possible yes theoretically. Qemu will run arm code but the macos libraries won't b e there. As the last point says that is what the Mac mini is for. Remember apple is a hardware manufacturer
    – mmmmmm
    May 6, 2021 at 21:49
  • 2
    I realize this--I don't expect Apple to provide such functionality nor make it easy to accomplish. I also don't think that this is what the Mac Mini "is for".
    – user416870
    May 6, 2021 at 22:57

2 Answers 2

4

Yes, in theory it is possible to emulate a M1 Mac on an Intel Mac. As such there's nothing "magical" about the M1.

However in practice you're going to run into various problems, mainly that there's no readily available software that does this. You can get much of the way of emulating the CPU itself using qemu. qemu already supports emulating various aarch64 CPUs, but it doesn't emulate the M1 and its Apple-specific instructions (yet), nor does it emulate the rest of the SoC or the rest of the Mac's peripheral units.

Last there's the question of legality. When you want to run macOS, you need to be properly licensed for that. You will need to investigate the license carefully to ensure that you can run the M1 macOS software on your Intel machine.

3
  • Answer check for the middle paragraph--thanks.
    – user416870
    May 7, 2021 at 4:54
  • What do you mean by “answer check”? Do you disagree with something specific in that paragraph?
    – jksoegaard
    May 7, 2021 at 6:16
  • 1
    No, the opposite. I "green check-marked" your answer to confirm it as answering the question.
    – user416870
    May 7, 2021 at 6:18
7

Update: Blackberry has now done this via QEMU + some other steps.

2
  • 1
    They have only done a very limited emulation. As I wrote in my answer, to actually emulate an M1 to run a full macOS, you would need to extend the existing qemu implementation with support for the Apple-specific instructions, the rest of the SoC and the peripheral units. Blackberry has done none of those things. They have used qemu and emulated some (not all) of the new registers on the M1 CPU. They then succed in booting a Xnu kernel that they compiled themselves to match the emulator. I.e. they're not booting stock macOS. They are then able to get a command line. Still an [...]
    – jksoegaard
    Dec 18, 2022 at 11:12
  • 1
    [...] accomplishment, but not really the same thing. I.e. there's no graphical mode, there's no running ordinary macOS applications, there's no peripheral support besides a few standard ones (such as Ethernet), no support for the GPU, etc. You cannot run a stock macOS kernel either.
    – jksoegaard
    Dec 18, 2022 at 11:13

You must log in to answer this question.