87
マイクロソフト:x86アプリはARMチップ上でネイティブに近いパフォーマンスで動作する

ARMアーキテクチャ上のWindows 10

ARMアーキテクチャ上のWindows 10

クアルコムは今年初め、次世代チップがWindows 10をフルサポートする最初のチップになると発表しました。これにはx86アーキテクチャ向けに構築されたすべてのプログラムが含まれます。マイクロソフトは最近公開したビデオで、x86アプリとユニバーサルWindowsプラットフォーム(UWP)アプリの両方がARMチップ上でどのように動作するかを実演しました。また、x86アプリをARMチップ上でネイティブに近いパフォーマンスで動作させることを可能にする基盤技術についても説明しました。

ARM版Windows 10はWindows RTとは違う

Windows RTは2012年にWindows 8と同時にリリースされました。これは基本的にARMチップ向けのWindows 8のバージョンであり x86プログラムのサポートはありませんでした。主にタブレットをターゲットとしており、PC市場においてIntelにARMとの競争をもたらすWindowsバージョンとなるはずでした。

しかし、このオペレーティングシステムはUWPアプリのみをサポートしており、アプリはゼロから開発する必要がありました。開発者はMicrosoftが期待したほどUWPアプリを採用せず、結果としてWindows RTデバイスの売上に悪影響を及ぼしました。Windowsとの関連性を考えると当然のことですが、一般的に「すべてのアプリ」が揃っていることを期待されるオペレーティングシステムは、実際には便利なアプリがほとんどない場合は魅力に欠けます。

一方、ユーザーの観点から見ると、ARM版Windows 10(正式な正式名称は未定)はx86版Windowsと同じように動作するはずです。通常のWindowsと同様に、UWPアプリケーションとx86アプリケーションの両方にアクセスできます。唯一の違いは、x86アプリケーションはバックグラウンドでエミュレートされ、「ネイティブに近い速度」で実行されることです。

Microsoftは最近、Windows 10 Sも発表しましたが、これが状況を少し複雑にしています。Windows RTに少し似ていて、デフォルトではUWPアプリのみが動作しますが、50ドル追加でフルバージョンのWindowsエクスペリエンスにアップグレードできます。Windows 10ではARMチップが完全にサポートされているため(少なくともQualcommのチップは)、ARMプロセッサを搭載したWindows 10 Sデバイスの中には、50ドル追加でフルバージョンのWindowsにアップグレードできるものが登場するかもしれません。

ARM 上でネイティブに近い速度で動作する X86 アプリ

Microsoftによると、x86 Win32アプリはWindows 10上で変更なしで動作するとのことです。これは当然のことです。Microsoftがこのプロジェクトを成功させたかったのであれば、他に方法はなかったはずです。多くのx86アプリでさえ何年も更新されていないため、開発者にARMで動作するように更新してもらうのは現実的ではありませんでした。Microsoftは、開発者に余分な作業を強いることなく、x86アプリをARMチップ上で自動的に動作させる方法を見つける必要がありました。

Googleも、開発者にAndroidアプリをChrome OSに移植するよう求めた際に、この教訓を学びました。最終的にGoogleは、Androidフレームワーク全体をコンテナにまとめるだけで、PlayストアにあるすべてのAndroidアプリをChrome OS上でネイティブに近い速度で実行できることに気付きました。

Tom's Hardware の最高のニュースと詳細なレビューをあなたの受信箱に直接お届けします。

ARM版Windows 10は、実行時にすべてのx86命令をARM64に変換し、メモリとディスクの両方にキャッシュして後で利用できるようにします。アプリの変換は一度だけ行われるため、x86アプリを開くたびにエミュレートする必要がなくなり、バッテリー寿命とCPU使用率を節約できます。

さらに効率性を高めるため、MicrosoftはARM版Windows 10で可能な限りネイティブARMコードを使用します。これには、OS自体の一部(ネイティブシステムDLLなど)、Edgeブラウザ、シェルなどが含まれます。エミュレーションはサードパーティ製アプリに限定し、それ以外のほぼすべてをネイティブで実行するという考え方です。

ARMコンペティション

ARM版Windowsは当初、QualcommのSnapdragon 835チップのみで動作します。Microsoftは、ARMチップ環境の複雑さを抑制し、最初から数十種類ものARMプロセッサのバリエーションをサポートする必要がないようにしたいと考えているようです。しかし、Microsoftは近いうちに、MediaTekとSamsungのハイエンドARMチップもサポートすることになるでしょう。これらのチップも、同等の性能を持つはずです。

これは、少なくとも低価格ノートPCの分野では、PC市場で熾烈な競争を巻き起こすはずです。ARMチップは、一般的にIntelの最低価格チップよりもはるかに安価です(これがIntelがモバイル市場で成功できなかった主な理由の一つです)。しかし、x86アプリの完全なサポートがなければ、ARMはPC市場で大きな進歩を遂げることはできませんでした。しかし、この新しいWindows on ARMのおかげで、ハイエンドARMチップはIntelの低価格製品と真っ向から競争できる可能性が大幅に高まるはずです。

これまで、スマートフォンやタブレットで一般的に許容されるレベルよりも高い電力エンベロープを持つARMチップを製造する意味はありませんでした。しかし、PC市場でARMチップメーカーが好調に推移すれば、低いTDPに制約されない、より強力なARMチップが登場する可能性があります。つまり、ARMチップは将来、Intelのハイエンド製品ともより直接的に競合できるようになるということです。

クアルコムは、同社のチップを搭載した最初のWindows on ARMデバイスが2017年後半に登場する予定だと述べた。

ルシアン・アルマスは、Tom's Hardware USの寄稿ライターです。ソフトウェア関連のニュースやプライバシーとセキュリティに関する問題を取り上げています。