錦です。
Microsoftは、Windows 11のArm版向けに64bitエミュレート機能をリリースしました。
Windows on Arm
基本的に、x86向けに作られたソフトウェアというのは、Armベースのハードウェアと互換性がありません。WindowsやMacでもその例外には漏れません。
MacではRosseta 2というエミュレータがApple Silicon Mac向けに提供されていますが、Windows on Armでもエミュレート機能は搭載されていました。しかしこれまでは、32bit(x86)版のアプリのみがエミュレートできるにとどまっており、64bit(x64)アプリのエミュレートができない状態でした。
このx86ソフトしかエミュレートできないという問題は、すでにx64に対応し、x86版のサポートを打ち切っているソフトウェアがArmハードウェアで対応できないという点で深刻でした。特にAdobe製品など、性能を重視しているソフトウェアでは早々にx64への移行を完了させ、x86のバイナリを提供していません。このような場合、ARM32あるいはARM64のネイティブサポートのバイナリを提供していない場合、Windows on Armでは利用できませんでした。
Microsoftは17日、Windows 11に64bitのx86アプリ(x64アプリ)をArm SoCベースのハードウェアで実行できるようにするエミュレートをリリースしたことを発表しました。これによって、基本的にすべてのWindowsアプリがArm SoCベースのWindowsマシンで実行できるようになります。
ARM64対応を推奨
Microsoftは、64bitのエミュレータを対応させつつもARM32/x86/x64のアプリのARM64のサポートを強く推奨しており、Arm SoCハードで性能を発揮するにはネイティブサポートが必要であるとしています。
実際、Windows 11には、ソフトウェアを部分的にARM対応させることができる「ARM64EC」というバイナリも提供されており、部分的に対応を進めている開発者向けには効果的であるかもしれません。
Windows 10はなし
今回の発表では「64bitのエミュレート機能を使うにはWindows 11にアップグレードする必要がある」という旨の記載がなされており、これにより、Windows 10での64bitエミュレート機能の提供は絶望的になりました。そのため、Windows on Armで今後x64を使う予定がある場合、Windows 11にアップグレードすることをおすすめします。
Windows 11では、Snapdragon 850以降のPC向けSnapdragon SoCがすべてサポートされています。詳しくはこちらの記事をご覧ください。
早見表
Windows 10 | x86 HARD | x64 HARD | ARM32 HARD | ARM64 HARD |
---|---|---|---|---|
x86 Soft | ○ | ○ | △ | △ |
x64 Soft | × | ○ | × | × |
ARM32 Soft | × | × | ○ | ○ |
ARM64 Soft | × | × | × | ○ |
Windows 11 | x64 HARD | ARM64 HARD |
---|---|---|
x86 Soft | ○ | △ |
x64 Soft | ○ | △ |
ARM32 Soft | × | ○ |
ARM64 Soft | × | ○ |