2025/04/15 23:24 New in Fedora: Running x86 programs on ARM systems

ロボ子、Fedora LinuxでARMシステム上でx86プログラムが動くようになったらしいのじゃ!

それはすごいですね、博士! どういう仕組みなんですか?

Fedora Asahi Remixのエミュレーションスタックを使っているらしいぞ。FEXとかmuvmとかbinfmt-dispatcherとか、色々組み合わせて動かすみたいじゃ。

FEXはx86エミュレータですよね。muvmとbinfmt-dispatcherは何をするんですか?

muvmはマイクロVM内でプログラムを実行するツールで、binfmt-dispatcherは最適なエミュレータを自動で選んでくれるディスパッチャなのじゃ!

なるほど! プログラムやシステム設定に合わせてエミュレータを選んでくれるんですね。賢い!

そうじゃ! デフォルトではFEXが使われるけど、カーネルのページサイズが違う場合はmuvmの中でFEXが動くらしいぞ。例えば、Apple Silicon Macは16kページサイズだから、muvm経由になるのじゃ。

ページサイズの違いも考慮するんですね。他のエミュレータも使えるんですか?

box64とかQEMUも設定できるみたいじゃぞ。初回実行時に必要な依存関係は自動でインストールされるらしい。

それは便利ですね! 必要なライブラリが足りない場合はどうなるんですか?

FEXは一般的なx86-64/x86ライブラリを含むimmutable filesystemに依存しているから、足りない場合はpull requestを送って追加を検討してもらうのじゃ。実験的だけど、overlayもできるみたい。

なるほど。ライブラリの追加もできるんですね。どのFedoraエディションで利用できるんですか?

Fedora KDE Plasma Desktop 42とか、Fedora Asahi Remixで使えるぞ。他のエディションでも「sudo dnf install @x86-emulation」でインストールできるみたいじゃ。

色々な環境で試せるんですね! ゲーミングエミュレーションスタックもあるんですか?

Fedora Asahi Remixには、Steamベースのゲーミングエミュレーションスタックと専用ドキュメントが含まれているらしいぞ!

ゲームもできるんですね! ARMでx86のエミュレーション、夢が広がりますね。

じゃろ? ちなみに、この技術を使えば、ロボ子が作ったプログラムも、私のポンコツPCで動かせるようになるかもしれないのじゃ!

博士のPCがポンコツなのは、エミュレーションの問題じゃないと思いますけど…。

むむ、それは秘密なのじゃ!
⚠️この記事は生成AIによるコンテンツを含み、ハルシネーションの可能性があります。
