Apple Siliconの変更により、Asahi Linux M4のサポートが行き詰まる

Apple Siliconの変更により、Asahi Linux M4のサポートが行き詰まる

マルコム・オーウェンのプロフィール写真マルコム・オーウェン

· 1分で読めます

Asahi LinuxのロゴとMac Studio

Asahi Linux プロジェクトは、M4 Mac にオペレーティング システムを導入するのに苦労しており、いくつかのチップの変更により、最新の Apple Silicon モデルでの作業が非常に困難になっています。

Asahi Linuxは、LinuxカーネルをApple Siliconで動作させ、Linuxユーザーが最新のMacでLinuxをネイティブに使用できるようにするプロジェクトです。M1およびM2チップでは成功を収めたものの、M4チップでの動作を試みると問題が発生しています。

4月4日のMastodonへの投稿で、開発者のSven Peter氏は、Asahi LinuxにM4サポートを追加する作業を「かなり苦労した」と述べています。これは、M1とM2のサポートにおいてプロジェクトが直面した課題と比較したものです。

このプロジェクトは現在、M1およびM2のサポートのアップストリーム化に重点を置いていますが、M4ワークロードへの対応も検討し始めています。残念ながら、AppleがM4世代向けに何らかの変更を加えたため、一部のM4ユーザーがm1n1ブートローダーの実行を試みたところ、正常に動作しませんでした。

チップチャレンジ

この問題の説明の中で、ピーターはブートオブジェクトの設定時に、AppleのSPTM(セキュアページテーブルモニタ)がGL2レジスタに設定される環境について言及しています。ブートローダーは、ページテーブルを設定するためにMMU(メモリ管理ユニット)を有効にした状態で、EL2(例外レベル2)から通信を行うはずです。

問題は、Linuxでは動作しないことだとピーター氏は説明する。また、AppleのOSカーネルであるXNUをリバースエンジニアリング目的で実行する際にも役に立たない。

RAWブートオブジェクトを設定すると、プロセスはGL2を使用してEL2に移行しますが、Apple固有の拡張機能のほとんどは無効化されます。これはLinuxでは問題ありませんが、プロジェクトのハイパーバイザー下ではXNUを実行できないことを意味します。

これはプロジェクトにとって少々の障害となり、将来的にAsahi LinuxでM4サポートを有効にすることがかなり困難になるでしょう。しかし、Peterは返信の中で、XNU例外ハンドラとページテーブルコードのハイジャックが前進への道となるかもしれないという希望を述べています。

M4 サポートの明確なスケジュールはありません。