「Windows 11 on ARM」の新ABIをMicrosoftが発表、既存アプリの移植が容易に:ARM64ECコードとx64コードを混在可能
Microsoftは、Windows 11 on ARMの新ABI「ARM64EC」を発表した。ARM64ECを利用すると、ARMをサポートしていない依存関係やプラグインを含むアプリケーションも、ARM上で動作させることができ、ネイティブARMアプリへと徐々に移行できる。
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.
関連記事
- 「Windows 11」は開発者にとってどのようなメリットがあるのか
Windows 10の後継OS「Windows 11」の登場によって、開発者にどのようなメリットがあるのか、Microsoftが公式ブログで説明した。新しいMicrosoft StoreやWindowsのネイティブアプリケーションに搭載される新機能などが役立つ。 - Microsoft、オープンソース開発プラットフォーム最新版「.NET 5.0」を公開
Microsoftは、「.NET Core」の後継となるオープンソース開発プラットフォームのメジャーリリース「.NET 5.0」を公開した。.NETの各種フレームワークを1つの.NETに統合する計画に基づく最初のリリースだ。 - 第246回 AppleがはじくArmコアの自社製SoC「M1」のそろばん勘定
Appleが自社製SoC「M1」と、それを搭載するMac製品を発表した。Intel製プロセッサからArmコアを採用した自社製SoCへの移行が開始されるわけだ。なぜAppleは、Intel製を止め、Armコアに移行するのか、筆者がその背景を推測する。