検索
ニュース

「Windows 11 on ARM」の新ABIをMicrosoftが発表、既存アプリの移植が容易にARM64ECコードとx64コードを混在可能

Microsoftは、Windows 11 on ARMの新ABI「ARM64EC」を発表した。ARM64ECを利用すると、ARMをサポートしていない依存関係やプラグインを含むアプリケーションも、ARM上で動作させることができ、ネイティブARMアプリへと徐々に移行できる。

Share
Tweet
LINE
Hatena

 Microsoftは2021年6月28日(米国時間)、「ARM64EC」(Emulation Compatible)を発表した。

 最新の「Visual Studio」プレビュー版や「Windows 11 Insider SDK」とともにARM64ECを利用すれば、ARMをサポートしていない依存関係やプラグインを含むアプリケーションをARM上で動作させることができ、ネイティブARMアプリケーションへと徐々に移行できる。移行途上でも、ARM上でネイティブアプリケーション並みの実行速度を部分的に確保することが可能だ。

 ARM64ECは、Windows 11 on ARMの新しいアプリケーションバイナリインタフェース(ABI)。ARM上のネイティブ速度で動作し、x64と互換性がある。アプリケーションやプロセス、モジュールにおいて、ARM64ECコードとx64コードを必要に応じて組み合わせることができる。

 アプリケーション内のARM64ECコードはネイティブに動作する一方、x64コードはWindows 11 on ARMに搭載されたエミュレーション機能を用いて動作する。

 ARM64EC ABIは、x64コードとのバイナリ互換性があるという点で、既存の「ARM64 ABI」とは少し異なる。ARM64EC ABIは、x64ソフトウェアの規約(呼び出し規約やスタック使用、データアラインメントなど)に従うため、ARM64ECとx64は相互運用が可能だ。ARM64ECでビルドされたアプリケーションは、x64コードを含むことができる(必ずしも含む必要はない)。ARM64ECは、自己完結したファーストクラスのWindows ABIだからだ。

開発者のメリットはどこにある?

 これまでは、アプリケーションをARM向けに再構築するには、アプリケーション全体をコンパイルし直す必要があった。

Copyright © ITmedia, Inc. All Rights Reserved.

ページトップに戻る