フルスペックのWindows 10をARMプロセッサで動かす「ARM版Windows 10」をMicrosoftが発表してから約半年が経ちましたが、アメリカ・シアトルで開催中の開発者会議「Build 2017」で、ARM版Windows 10の仕組みの解説と実機デモがビデオメッセージとして公開されました。

Windows 10 on ARM | Build 2017 | Channel 9

ARM版Windows 10のデモを披露してくれるのは開発ディレクターのArun Kishan氏(左)とグループプログラムマネージャーのHari Pulapaka氏。



スマートフォンを始めとするモバイル端末を中心に、常にモバイル回線と接続して用いられる「connected device」が増えており、通信速度の向上と通信料金の低下によって、今後もますます常時接続を求めるユーザーの声は強くなります。



「いつでもどこでもつながる」というコンセプトの重要性は、Windows 10マシンでも同じ。



そこで、常時接続を前提として考える場合、低消費電力でモデム内蔵のARMベースプロセッサを使ったWindows 10マシンが必要になるというわけです。



ということで、ARM版Windows 10のデモを始めます。Pulapaka氏が手にするタブレットのような端末は、Snapdragon 835を搭載するQualcomm製の評価機。この中に、ARM版Windows 10がOSとして搭載されています。



起動すると、x86版のWindows 10とまったく同じ。ARM版Windows 10では、エミュレーションソフトによって、x86版のWindows 10 Proが動いています。



システムのプロパティを表示すると、プロセッサーはQualcommのSnapdragon 835、メモリが4GBであることが確認できます。



タスクマネージャーのプロセスを表示させると、8コアCPUであることが分かります。



Windows 10の標準ブラウザ「Microsoft Edge」も、サクサクと快適に動かせます。



Windowsマシンであることのメリットを示すために、誰でもAmazonで入手できるという汎用品のUSBカメラを取り出すPulapaka氏。



USBハブにカメラを接続して……



Windows 10の標準カメラアプリを起動すると……



問題なく映像が出力できました。スマートフォンと違ってドライバーで苦労することはありません。



「ARM版Windows 10は、x86版のWindows 10と同様にWin 32アプリケーションが動くのが最大の特長です。Win 32アプリケーションの使い方は、サイトにアクセスして実行ファイルをダウンロードしインストールすればOK。普通のWindows 10と何ら異なるところはありません」



Win 32アプリケーションの代表的なオープンソースソフト「7-Zip」をインストールして使ってみるとのこと。公式サイトからダウンロードした7-Zipのインストーラーを実行。



インストール作業が完了。



スムーズに7-Zipを起動できました。



デモに続いてKishan氏がARM版Windows 10の技術仕様について説明します。ARM版Windows 10で動くWin32アプリケーションには特別な処理は施されていないので、既存のソフトウェア資源を完全に有効活用できます。ユーザーがARM版Windows 10を使う上で、注意するべき点は何一つなし。通常のWindows 10 Proとしての機能が完全に使えます。



Windows OSの動く仕組みは、Windows OSがWindowsカーネルの上に乗っており、カーネルを通してCPUやGPUなどのハードウェアに命令を送ります。ARM版Windows 10でもこの仕組みは変わらず、カーネルやドライバーなどすべてのinboxプログラムはARMコードでネイティブに動いています。



これを実現するのが、Windows on Windows(WOW)というエミュレーションソフト。64bit版WindowsでWin32アプリケーションを動かすために「WOW 64」がありますが、仕組みは全く同じ。WOW 64ではCPU処理は物理CPUが行いますが、ARM版Windows 10のWOWではCPU処理までソフトウェアで実行されるという違いがあります。



動的エミュレーションを動かすかわりに、Compiled Hybrid PE(CHPE)と呼ばれるx86 DLLを開発してARM64コードを動かしているとのこと。Kishan氏は「CHPEはあらかじめ生成された完全なバイナリのようなものです」と説明しています。CHPEを使うことで、ほとんどネイティブコードと変わらない速度でのエミュレーションが可能になっているそうです。



再び、Pulapaka氏によるデモ。Pulapaka氏は、ARM版Windows 10が、Win32アプリケーションをエミュレーション処理により実行できることと同時に、ユニバーサルWindowsプラットフォーム(UWP)アプリをネイティブに実行できることが重要であると指摘して、Windowsストアアプリを起動しました。



ラジオアプリ「iHeartRadio」をダウンロードしてインストール。



ARM版Windows 10は、ARMプロセッサーでも動かせるように設計されているUWPアプリを当然ながらネイティブに動かすことができます。



タスクマネージャーでもiHeartRadioがARMコードで動くことが確認できました。



以上のとおり、ARM版Windows 10はWin32アプリケーションをエミューレーターによって限りなくネイティブアプリに近い形で実行でき、もちろんUWPアプリにネイティブ対応しています。



ARM版Windows 10のリリース時期は、共同開発するQualcommのCEOが「2017年中」と発言したことから年内の登場が期待できます。ARM版Windows 10を搭載した軽量・長時間稼働が可能なノートPCや2in1端末が登場する予定です。