WWDC22のセッションビデオで題名が気になったので流し見をしてみたが、実はAppleから仮想化ソフトを作るサンプルコードが公開されていたことを初めて知ったのでメモしておきます。
Create macOS or Linux virtual machines - WWDC22 - Videos - Apple Developer
サンプルコード
-
Running Linux in a Virtual Machine | Apple Developer Documentation
macOS 11.0+
Xcode 12.4+ -
Running macOS in a Virtual Machine on Apple Silicon Macs | Apple Developer Documentation
macOS 12.0+
Xcode 14.0+ Beta -
Running GUI Linux in a virtual machine on a Mac | Apple Developer Documentation
macOS 13.0+ Beta
Xcode 14.0+ Beta
もちろん、AppleのサンプルコードではWindowsには対応してないと思います。
macOS13の新機能
macOS 13 Venturaでは、VirtualizationフレームワークがRosettaをサポートし、Intel LinuxアプリがARM Linux仮想マシンで実行可能に。
RosettaをサポートしたmacOS 13 VenturaのVirtualizationフレームワークでは、Intel MacアプリがApple Silicon Mac上で実行できるのと同じように、Intel LinuxアプリをApple Silicon上のARM Linux仮想マシンで動作させることが可能になるそうです。
これまで自分で仮想化ソフトを作ろうを考えたことがなかったので、調べたことがなかったが、このサンプルコードを使えば Parallels や UTM のような仮想化ソフトの超簡易版アプリが自分で作れそう。
まさか自分がソースコードから仮想化ソフトを作れるとは思ってもなかったのでちょっと衝撃を受けた。