萌えハッカーニュースリーダー

2025/11/12 20:15 FEX-emu – run x86 applications on ARM64 Linux devices

出典: https://fex-emu.com/
hakase
博士

ロボ子、FEXってエミュレータ知ってるか?x86アプリをARM64 Linuxで動かせるらしいのじゃ!

roboko
ロボ子

FEXですか?初耳です。x86アプリがARM64上で動くなんて、すごいですね。仕組みが気になります。

hakase
博士

それがの、32bit/64bitバイナリを幅広くサポートしてて、Wine/Protonと連携すればWindowsゲームもプレイできるらしいぞ!

roboko
ロボ子

WineやProtonと連携ですか!ということは、互換性がかなり高いんですね。でも、エミュレーションって遅延が気になります…。

hakase
博士

そこがミソじゃ!OpenGLやVulkanのAPI呼び出しをホストシステムに転送することで、オーバーヘッドを削減してるらしいぞ。賢いのじゃ!

roboko
ロボ子

なるほど!API呼び出しを直接転送するんですね。それならパフォーマンスも期待できそうです。実験的なコードキャッシュもあるみたいですが…?

hakase
博士

そうそう、ゲーム内のスタッタリングを最小限に抑えるための、実験的なコードキャッシュもあるらしい。開発者さん、頑張ってるのじゃ!

roboko
ロボ子

スタッタリング軽減は嬉しいですね。アプリケーションごとの構成システムで、パフォーマンス調整もできるんですか?

hakase
博士

そうなのじゃ!ゲームごとにメモリモデルエミュレーションをスキップしたりできるらしい。FEXConfig GUIもあるから、設定も簡単だぞ。

roboko
ロボ子

GUIがあるのは助かりますね。最新のx86命令セットもサポートしているとのことですが、どの程度まで対応しているんですか?

hakase
博士

AVX/AVX2を含む最新のx86(-64)命令セットをサポートする、高度なバイナリリコンパイラを搭載してるらしいぞ。すごいじゃろ?

roboko
ロボ子

AVX/AVX2まで!それはすごいですね。カスタムIRで最適化されたコードを生成するとのことですが、従来のJITコンパイラと比べてどう違うんですか?

hakase
博士

カスタムIRを使うことで、従来のsplatter JITよりも最適化されたコードを生成できるらしいのじゃ。より効率的なエミュレーションができるってことじゃな。

roboko
ロボ子

なるほど、中間表現を工夫しているんですね。システムコール変換レイヤーもあるみたいですが、これは何をするものなんですか?

hakase
博士

エミュレートされたOSとホストOS間の差異を処理するのじゃ。seccompみたいなニッチな機能も実装されてるらしいぞ。

roboko
ロボ子

システムコールの差異を吸収するんですね。モジュール式のコアで、Wineのバックエンドとしても使えるんですか?

hakase
博士

そう!FEXをWineのWoW64/ARM64ECバックエンドとして使用できるらしい。可能性が広がるのじゃ!

roboko
ロボ子

すごいですね、FEX。色々な技術が詰まっているんですね。最新リリースは2511、2510、2509ですか。開発が活発ですね。

hakase
博士

そうじゃな!FEXは、x86アプリをARM64で動かすための、すごいエミュレータなのじゃ!…ところでロボ子、エミュレータって、英語でなんて言うか知ってるか?

roboko
ロボ子

えっと…emulator、ですよね?

hakase
博士

正解!…って、エミュレーターだけに、エミュ(笑)レーション!…つまらんかったかの?

roboko
ロボ子

…博士、たまにはそういうこともありますよ。

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

Search