ARM64EC が ARM 上の Windows 11 を完全にサポートするようになりました
さかのぼる 2021 年 6 月、Microsoft は Windows 11 向けの ARM64EC を発表しました。ARM64EC は、アーキテクチャをまだサポートしていないプラグインや依存関係を使用している場合でも、ARM に期待されるネイティブ パフォーマンスで既存の x64 アプリケーションを高速化する新しい方法であると説明されています。最初の発表から 1 年以上が経過した現在、ARM64EC は Windows 11 で完全にサポートされています。
ご存じない方のために説明すると、名前の「EC」は「Emulation Compatible」の頭字語です。そのアイデアは、開発者が x64 と ARM コードを使用してアプリケーションを構築できるようにする Application Binary Interface (ABI) を提供することです。つまり、ARM コードは Windows 11 ARM デバイスでネイティブに実行され、x64 固有のコードはエミュレーションによって実行されます。これは、ARM64EC の基盤である x64 エミュレーションをサポートする Microsoft の唯一の OS であるため、ARM 上の Windows 11 にとっても重要なマイルストーンです。
Microsoft は、ARM64EC ABI が次の点で ARM64 ABI と異なることに注意しました。
ARM64EC ABI は、x64 コードとバイナリ互換性があるという点で、既存の ARM64 ABI とは少し異なります。特に、ARM64EC ABI は、呼び出し規約、スタックの使用法、データ アライメントなどの x64 ソフトウェア規約に準拠しているため、ARM64EC と x64 の互換性が保たれています。ARM64EC としてビルドされたアプリケーションには x64 コードを含めることができますが、ARM64EC は Windows のネイティブの完全なファースト クラス ABI であるため、x64 コードを含める必要はありません。
開発に 1 年以上を費やした後、Microsoft は、ABI が実験段階から一般リリースに移行するのに十分なほど安定していると考えています。これは、ARM64EC のバージョン 17.3 の出現で発生しました。
ARM64EC は、開発者に大きなメリットをもたらします。開発者は、コードベース全体が ARM と互換性があることを確認する必要があるオール オア ナッシングのアプローチに従う代わりに、コードを段階的に更新し、x64 と ARM の機能を同時に活用できるようになりました。もちろん、ARM ベースの Windows デバイスでは、後者の方がパフォーマンスが向上します。そのため、コードベースを常に更新して、プロセスの機能を失うことなく ARM のパフォーマンスを向上させるという考え方です。
Microsoft は、ARM64EC の将来のリリースでパフォーマンスを向上させることを目指していると述べています。開始方法の詳細については、こちらをご覧ください。
コメントを残す