M4 Macs Can’t Virtualize Older macOS
Running a macOS VM for any version before 13.4 Ventura on an M4 Mac results in a black screen, and the VM fails to boot. This is true whatever settings are used in the virtualiser, even if it’s set to boot the VM in Recovery mode. It’s also true when that VM has been built on that Mac: although that appears to complete successfully, when first run that VM opens as a black screen and never proceeds with personalisation and setup.
Currently the only way to run a VM with macOS prior to 13.4 Ventura is to do so on a host with an M1, M2 or M3 chip.
[…]
The first versions that can run in VMs are macOS 12 Monterey, although prior to 12.4 they can sometimes be a bit fractious. They also have major limitations, such as not supporting shared folders with the host.
Previously:
- Apple M4 Pro and M4 Max
- Securing Virtual Machines on Apple Silicon
- Sequoia Beta 3 VMs Don’t Support Mac App Store
- Limitations on macOS Virtual Machines
5 Comments RSS · Twitter · Mastodon
A ton of my work involves testing and experimenting in older releases of macOS, especially those that are completely fresh installs. This means being able to virtualize any release of macOS with save-states is essential to me. I don't see how I could do my work on an Apple Silicon mac with its limited virtualization options, and I'm not sure what I'm going to do when Intel macOS is dropped, probably next year.
The lack of support for older macOS VMs on M4 Macs is a major setback for developers needing legacy environment testing. It's surprising to see this limitation, especially when M1 to M3 chips handle it just fine. This might push users to hold on to earlier models for broader compatibility.
Probably, some CPU instruction was changed or removed in the M4 (but we have no idea what that might be, since we don't have any real documentation for the chip).
There should be some way for the virtualization system (provided exclusively by Apple as well), to intercept this changed or removed instruction and then convert it to some other call or just ignore it.
Howard's suggestion of issuing revised IPSW's is wrong.
Of course Apple could support virtualizing older releases of macOS. The fact that they don't is yet another example of them either not knowing or not caring about the actual needs of their users.
@Mike I’m not sure it’s an instruction change, or you’d see older software not functioning as expected. I haven’t heard of such issues on m4.