米Microsoftと米Qualcommは、「Snapdragon 835プロセッサで動作するWindows 10搭載モバイルPC」を投入すべく、準備を進めている。OEMパートナーのPCメーカーとしては、ASUS、HP、Lenovoが名乗りを上げており、2017年後半以降にこうした製品を発売する見通しだ。
このWindows 10はかつてのWindows RTと異なり、ARM系プロセッサで動作しながらも既存のPC版Windows 10同様、Universal Windows Platform(UWP)アプリとx86向けに記述されたWin32アプリが動作するという。
これに対し、Intelが「x86 ISA(命令セットアーキテクチャ)の特許」を侵害している可能性について指摘していることは前回紹介した通りだ。まだ具体的な製品がないタイミングということもあり、Intelは訴訟など具体的なアクションを起こしていないが、この新しいARM版Windows 10を「無視できないレベルの競合」と認識したからこそ、このようなけん制をしたのだろう。
今回は、6月1日に台北で報道関係者向けに披露された「Snapdragon 835で動作するWindows 10のテストプラットフォーム」を振り返りつつ、この「Windows 10 on Snapdragon」と、さらに「Always Connected PC(常時接続PC)」というMicrosoftが掲げた新しいPCのコンセプトについて掘り下げていこう。
QualcommがCOMPUTEX TAIPEI 2017に合わせて台北で披露したSnapdragon 835のプラットフォーム上で動作するWindows 10は非常に軽快だった。一連の動きを見る限り、何も説明されなければ、x86系CPU搭載の標準的なPCと思う方も多いかもしれない。
デモの画面ではx86向けのOfficeアプリ各種がパフォーマンス的に問題なく動作する様子を紹介していたが、これらはエミュレーションで実現している。このエミュレーションは、通常のx86プラットフォームで動作させる場合に比べてメモリ上のフットプリントを余分に消費するという。完全な逐次実行ではなく、プログラムのx86バイナリをある程度動作中にARMバイナリに変換してしまい、これでパフォーマンスを捻出しているのではないかと推察する。
実際の製品投入時には、本体付属のソフトウェアの他、OfficeのようにMicrosoftが提供するアプリを中心に、ARMバイナリベースのものが用意されるという。Windowsストアで提供されるUWPアプリについても、同プラットフォームをターゲットにしたものについては、ARMバイナリ版がダウンロードされるようだ。
UWPアプリの実体であるAPPXファイルは、アプリをダウンロードするデバイスの環境に応じて、パッケージするファイルの中身の構成を適時変更する仕組みになっている。
つまり、通常の64bit版Windows 10であれば、それに対応したバイナリがパッケージングされ、今回のSnapdragon 835搭載PCであれば、ARMバイナリがパッケージングされた状態でダウンロードが行われる仕組みだ。これはAPPXのファイルサイズを最小限にし、ストレージやネットワーク帯域を圧迫させないための工夫となる。
ただし、ARMバイナリを含んで最適化した形でWindowsストアに登録するかはデベロッパー次第であり、もしx86バイナリしか存在しない場合に必要となるのがエミュレーションというわけだ。
現状でWindows 10 on Snapdragonは、32bitアプリのエミュレーションのみに対応し、64bitアプリの動作には対応しない。将来的なバージョンアップで対応予定とのことだが、エミュレーション機能が搭載された意義を考えれば、32bitアプリの対応だけで事足りるとも考えられる。
そもそもエミュレーションとは、レガシー資産の動作が主な目的だ。フリーソフトを含め、ユーザーがフル機能版のWindows 10に期待する目的の1つは、これらレガシーアプリの動作にあり、この点でニーズを満たせるだろう。
逆に、64bit版も提供されるようなアクティブなアプリであれば、ARMバイナリ提供の可能性が高いため、エミュレーションはそこまで重要な意味を持たない。問題はゲームや画像処理ユーティリティーなどのパフォーマンスに振った使い方をするアプリの動作で、これらは今後実際の製品が登場してからの評価項目となる。
Copyright © ITmedia, Inc. All Rights Reserved.