アップル仮想化フレームワークって何

macbook で UTM を使って Linux を仮想化しようとすると”Apple 仮想化を使用”と出てくる訳なのですが、私も含めて一般人以上ではない人にとっては「これ何よ」ということになります。

アップル仮想化フレームワークって何_a0056607_14231771.png
M1/M2 mac で ARM版 Windows11を: 無償のUTMで仮想化




でChatGPT に聞いてみた

Q: アップル仮想化フレームワークって何

A: Appleの仮想化フレームワークは、macOSおよびiOSで仮想マシンを実行するためのソフトウェアです。これは、アプリケーションの互換性を維持しながら、複数のオペレーティングシステムを同じデバイスで実行できるようにするために使用されます。

Appleの仮想化フレームワークは、主に2つの種類があります。最初のものは、ハイパーバイザーフレームワークで、これはmacOS上で仮想マシンを実行するためのものです。2つ目は、コンテナベースの仮想化フレームワークで、これはiOS上で実行されるアプリケーションを分離するために使用されます。

これらのフレームワークは、macOSおよびiOSの両方で重要な役割を果たしています。例えば、macOSのハイパーバイザーフレームワークは、Parallels DesktopやVMware Fusionなどの仮想マシンアプリケーションを実行するのに役立ちます。一方、iOSのコンテナベースの仮想化フレームワークは、企業が従業員に提供するために開発されたアプリケーションを、個人用のアプリケーションと分離して実行するのに役立ちます。

なるほどよく意味がわからない。で、本家の説明を読んでみた。

Virtualization : Create virtual machines and run macOS and Linux-based operating systems.

やっぱりわからない。

要するに、Apple が提供する仮想化の API で Linux や macOS を仮想化するには便利でスバラしいということなのですが、これ「おいしの?」と当たり前の様に思うわけです。この数ヶ月、UTM と戯れて、Apple VM Framework を使ってみて、Fedora37 や openSUSE Tumbleweed は動かなかったし、その後、openSUSE Leap 15.5 のベータ版から動くようになった。ついでに、Tumbleweed も動くようになった。

Apple VM を使わない場合はどうなるかと言えば UTM/QEMU Bios から起動する訳ですね。Windows11 はこのパターンです。というかWindows をインストールする時は Apple VM のチェックポイントがない。

じゃ、ARM64 Windows を Linux だと偽ってインストールしてみたら、Apple VM 環境下ではセットアップは立ち上がらないし、Apple VM のチェックを外して UTM/QEMU から入れたら、ハードウェアチェックで引っかかった。やっぱり、UTM はWindows11を動かすために何かしているな。

Apple Sillicon mac 上の UTM で Linux を動かすには、Apple VM フレームワークと QEMU の二種類がある、という事です。少なくとも今手に入る openSUSE Tumbleweed ではどちらも動くようだし、SUSE SLE/Leap 15.5 では Apple VM フレームワークじやないと動かない。これはそれぞれのディストリビューションによって対応が違ってくるかも知れません。

結局どちらが良いのかと言う話になるのですが、やはり Apple としては、自社の技術を押し出したいので Apple VM フレームワークを中心に考えるでしょう。openSUSE では、グラフィックスが mac のグラフィックスをそのまま引き継いでいるようなので性能面でもこちらの方が有利のようです。

Linux が効率よく mac のハードウェアの呼び出しをするには、 Apple VM Framework を呼び出して直接 mac のハードウェアを動かすのが良い。そのためには、 Linux ゲスト側のディストリビューションで Apple の VM に合わせた仮想ドライバ・ソフトウェアが必要となります。もちろん Apple のドキュメントには Apple VM Framework は VirtIO にも対応しているらしい事が書いてあります。ネットワークやディスクドライバは VirtIO をそのまま使っているらしい。

一方 Linux のディストリビューション側としては、オープンソースだし、動作する aarch64 ターゲットは Apple mac だけではない。様々な IoT 機器も対象なわけですから、QEMU を主流に考えるのかも知れない。



Apple ハイパーバイザーフレームワークを使ったもの

Apple の VirtualOS

まるっきりこれですね。

virtualOS
https://apps.apple.com/us/app/virtualos/id1614659226

アップル仮想化フレームワークって何_a0056607_14233864.png


UTM Virtial ソフトウェアで、macOS を仮想化しても同じ事ができます。

アップル仮想化フレームワークって何_a0056607_14240048.png

Docker コンテナ

Apple silicon 対応 Docker Desktop
https://docs.docker.jp/desktop/mac/apple-silicon.html

アップル仮想化フレームワークって何_a0056607_14241423.png


openSUSE の ARM64 版 Docker コンテナがそのまま動きます。 Parallels や VMware fusion は要らない。

アップル仮想化フレームワークって何_a0056607_14243353.png

M1 macbook で Linux、docker で openSUSE Leap を実行




UTM で Linux

まだまだ発展途上です。

]
アップル仮想化フレームワークって何_a0056607_14245084.png
M1 mac で Linux 仮想化 SUSE Linux Enterprise15sp5 Beta が UTM で動いた




by islandcenter | 2023-03-22 15:42 | MacOS | Comments(0)