錦です。
Apple Silicon搭載Macが登場してまもなく2年が経過しますが、その評価はとても高いものです。しかし、Apple Siliconならではの問題もあります。それはOSの問題です。
Apple SiliconとOS周りの問題
Apple SiliconはArmベースであり、従来のMacに採用されていたIntelのx86とは違うということはご存知のとおりです。その結果、もともとのMacに存在した一部の機能というのが無効化されています。その一つがBoot Campです。BootCampは、MacにWindowsをインストールしmacOSとWindowsでデュアルブートすることができるシステムです。macOSの標準の機能ですのでMacの機能をある程度サポートしており、例えばストレージやカメラなどの各種モジュールのドライバがあり最適化されているようです。裏返せば素のWindowsではないということになりますが大きな問題ではありません。
しかし、Apple SiliconにはOSをデュアルブートするという敷居が非常に高くなっています。前述の通りBootCampがありませんので、Apple公式で提供されているデュアルブートシステムがありません(ただし後述の通りmacOS以外のOSとデュアルブート自体は可能です)。
そして、現在に至るまで基本的にApple Silicon Macでは原則としてmacOS以外のOSはネイティブでブートさせることができないというのが常識でしたがここ数週間でややその流れは変わりつつあります。
各OSの状況
Arm Linux
Linuxはカーネルレベルで徐々にM1に対応が進んでいます。
まず、M1 Macで動作するLinuxのプロジェクトとしてAsahi Linuxが進んでいます。Asahi Linuxは、M1 Macでネイティブで動作することを目指して開発されているディストリビューションで、M1 Macのハードウェアとしての機能を完全にサポートしているわけではありませんが、Wi-FiやUSB、ストレージ、イーサネットなどの基本的なものがサポートされています(ただし、画面出力、GPU、カメラなど重要部分でもサポートしていないものもあります)。
Asahi LinuxではUEFI環境のみも提供しているので、OpenBSDやその他のサポートされているLinuxディストリビューションもインストールことができます。
ただ、AppleはApple Siliconについての技術的な説明を公開していませんので、Asahi Linuxはリバースエンジニアリングからのヒントを中心に開発が進んでいます。そのため、完全にハードウェアをサポートできるのは数年先の見込みではあります(ただし、この時点でLinuxのディストリビューションが動き、基本的な部分ではサポートがされているので大きな問題はなく使えるはずです)。*1
で、Linux本体の話ですが、Linuxを管理しているLinus Torvalds氏はLinux 5.19のリリース作業をM1 MacBook Airで行ったそう。これは、本人がApple Siliconに興味が合ったからだそうで、メインの作業をMacBookでおこなっているわけではないそうですが、次の出張の際にはMacBook Airを持っていくとリリースノートに書かれています。
そんなLinux 5.19ですが、Asahi Linuxのチームの協力により、M1 MacBook AirのNVMeコントローラとApple eFuseドライバがマージされているようです(eFuseは出荷段階でのキャリブレーションなどの多くのデータが含まれています)。
x86 バイナリ on Arm Linux
一方で、x86に関わる部分についてもある程度の動きがありました。これは個々数週間というわけではなくWWDCでのお話ですが、今秋リリースのmacOS Venturaでは、Virtualizationフレームワークがアップデートされ仮想環境上のLinuxに対してAppleのエミュレータRosetta 2が利用できるようになりました。ただし、macOSの変更点と書いてあるとおり、この機能は基本的にmacOS上で動作する仮想環境でのお話です。
この変更点について詳細をお話しますと、どうやらOSごとエミュレートできるわけではなさそうなのですが、LinuxのArmバイナリでx86バイナリを実行できるようになるようです。
その他、業界標準のEFIブートローダがサポートされるため、USBドライブにあるインストーラーを検出できるようになるほか、Virtio GPU 2Dがサポートされているようです。
Windows
さて、Windows on M1 Macを取り巻く環境についても若干大きな変化があります。
まず、技術的な話からすると、Parallels Desktop 18にてWindows 11が正式にサポートされました。また、VMwareがWindows 11をサポートするテストを開始しています。
Parallels Desktop 18では簡単にWindows 11がインストール可能になっているそうです。つまり、WindowsのISOを自分で用意する必要がなくなりました。
このように、Windows 11自体を正式にサポートできる環境は技術的に整ってきましたが、ライセンスの問題がつきまといました。Windows 11 ARMは基本的にOEM向けだったため、x86向けWindowsのようにパッケージや単体での販売がなかったのです。そのため、Windows 11をParallels Desktopなどを用いて実行する場合にはWindows Insider Preview(β版)のISOを利用しなければならず、正規のWindows 11をインストールすることは困難でした(正規ではなくとも非合法というわけではないです)。
それがASCIIによると、Parallels Desktop 18ではWindows 11 ARMの正式なビルドが利用でき、またライセンス認証もできるようになっている上、Microsoft Storeからライセンスを購入することも可能となっているそうです。
〆
このようにM1 MacでLinuxやWindowsの実行環境が整いつつありますが、Asahi Linuxの話を覗いてBootCampレベルでシームレスに使えるLinuxやWindowsがあるのかと言われれば謎です。僕の個人的なのぞみでいうと、Windowsは別にいいんですけど、macOSの起動をバイパスしてLinuxが起動できるようにならないかとも。
Windowsについてもリソースの節約という観点からできればBootCampの復活を望んでいます。
ただ、BootCampに期待を寄せられる要素として増えたのはWindows 11 ARMがまだ完全に自由というわけではない(Parallels Desktop 18もParallelsが用意したISOだし)ものの、Windows 11 ARMがサードパーティに開放され始めたという点です。正直、Armで自作PCが実現するまではWindows 11 ARMの単体提供はないものと思っていたのでこれは嬉しい。今後もパッケージ版はなくとも正規のビルドを配布してくれると嬉しいですね!!
# 参考