笠原一輝のユビキタス情報局

MicrosoftがUniversal Appsと次期Windowsで目指す新世界

 前回の記事では、9型以下のディスプレイを持つデバイスに対するWindowsのライセンス料が0ドルになることが、デバイス機器ベンダーにどのような影響を与えるのかを考察した。Buildでは2つの大きな発表があり、前回の記事ではその1つ(ライセンス料が0ドルについて)だけを説明した。今回の記事ではもう1つの話題である「Universal Windows Apps」を取り上げる。

 MicrosoftはWindows 8で新しいプログラミングモデルであるWinRTを導入し、それに基づいたモバイルアプリ(Windowsストアアプリ)を導入した。Universal Windows Appsは、そのWindowsストアアプリをWindows Phone 8.1とWindows 8.1で共有するための仕組みで、プログラマは若干の違いに配慮するだけで、共通のソースコードでWindows Phone 8.1向けとWindows 8.1向けを作成できるようになる。これまでWindows PhoneとWindowsストアアプリはプログラミングモデルこそ近かったが、そのあたりの整理がされていなかったWindowsプラットフォームの弱点が解消される。

 だが、Universal Windows Appsは、Microsoftの壮大な構想の単なるスタート地点に過ぎないことはあまり理解されていない。本記事ではMicrosoftがUniversal Windows Appsで何を目指しているのか、デバイスの視点から解説する。

4月のBuildでMicrosoftが公開した、Windows 8.1の次期Updateで提供されるスタートメニューとウインドウ表示が可能になるWindowsストアアプリの画面

ローカルからスマートへと大きく転換していったアプリ

 まず、前提知識として、OSやアプリのプラットフォーム構造が大きく移り変わっていることを理解しておく必要がある。古くからのPCユーザーにとってのアプリというのは、WindowsやMac OS上でバイナリファイルをDVDなりダウンロードなりで入手して、ローカルのストレージにインストールして利用するモノという理解だろう。Windowsで言えば、デスクトップアプリがその代表例と言える。こうしたアプリは、ローカルの端末に高い処理能力(CPU、メモリ、ストレージなど)があることを前提に設計されており、応答性や性能が優先されるような処理には適している。例えば、写真編集や動画編集といった編集作業が伴うような作業は依然としてこうした伝統的なアプリソフトウェアに優位性がある。

 しかし、AppleのiOSやGoogleのAndroidなど、スマートOSと呼ばれるモバイル向けのOSで採用されているアプリは、処理をクラウド側で行なうものが少なくない。この場合、ネットワークの帯域に依存するため、応答性が優先されるような処理では分が悪いものの、端末側の処理能力が十分でなくてもさまざまな機能を実現できるというメリットがある。

 AppleやGoogleなどが提供している音声認識はその最たる例だろう。以前の音声認識は、処理をローカル側で行なっていた。その場合、性能の低いスマートフォンなどを使うと、実用になるレベルにはならなかった。しかし、現在は音声データをクラウドに送って、膨大なデータとのマッチングをクラウド側のCPUで行ない、結果としてローカルで行なっていた時よりも認識率が上がっている。

Windows PhoneとWindowsでアプリ環境が断絶してしまっていたMicrosoft

 こうしたWebアプリやスマートアプリ、モバイルアプリなどとさまざまな呼ばれ方をする新しい形のアプリの波に、Microsoftは乗り遅れてしまった。もちろん、Windows Phone用のアプリという形でMicrosoftもやってはいた。乗り遅れたのはMicrosoftの本流であるWindowsのスマートOS化だ。その結果として、AndroidやiOSベースのタブレットが、Windowsのシェアを脅かすという事態が発生している。

 そこでMicrosoftは2012年にリリースしたWindows 8/RT世代で、WinRTと呼ばれる新しいプログラミングモデルを導入した。WinRTは、従来のWin32デスクトップアプリを置きかえるプログラミングモデルとして導入された。WinRTを利用すると、Modern Style AppsやWindowsストアアプリなどとMicrosoftが呼んでいるモバイルアプリを作成できる。

 このWindowsストアアプリは導入当初には、アプリの数もさほど多くなく、使える環境になるまでは時間がかかったが、昨年(2013年)頃からFacebook、Twitter、LINEなどの主要なSNSの公式アプリなどが揃い始め、実用度が上がってきた(それでも日本語版ではKindleがないとか、Instagramの公式アプリがないなど課題はまだあるが……)。

 だが、ここへ来て課題として浮上してきていたのが、タブレット用OSとしてのWindowsと、スマートフォン用OSとしてのWindows Phoneでアプリの互換性がなく、Windowsストア向けにはあるアプリが、Windows Phone向けのストアにはないという事態が発生している(その逆も多い)。一方、iOSやAndroidでは、スマートフォン向けOSとタブレット向けOSという区別がないため、アプリ開発者は解像度の違いなどを吸収すれば簡単に対応することができていた。

 そうした状態を解消するために導入されるのが、Universal Windows Appsという仕組みだ。Universal Windows Appsでは、Windows PhoneとWindows 8.1での差異が10%程度になっており、アプリ開発者は、そのことだけを意識して設計すれば、1つのソースコードでアプリを作り、Windows Phone用のストアとWindowsストアで同じアプリとして公開できるようになる。

 ユーザーはもちろん、Universal Windows Appsで公開されたアプリなら、Windows Phone 8でも、Windows 8でも利用できる。

あらゆるディスプレイサイズに対応するUniversal Windows Apps

 だが、Universal Windows Appsの意味はそれだけに留まらない。アプリの開発者がディスプレイの解像度の違いを吸収する設計をすればという前提条件は付くものの、Universal Windows Appsにより、4型から、それこそ100型といった大型までどんなタイプのディスプレイでも動くアプリプラットフォームを得られる(60型や100型のディスプレイを接続したPCでWindowsストアアプリ動かすことに意味があるかどうかは置いておくとして)。

【図】各OSのプラットフォームと対応するディスプレイサイズ

 ポイントとなるのは、10〜11型あたりを見ると、今度は競合となるAppleやGoogleにおいて、アプリのプラットフォームが分断されていることだ。Appleは10型のiPad AirまではiOSベースだが、11型のMacBook Air以上はMac OSベースになっており、それぞれ別のアプリが必要になる。同じことはGoogleのAndroidとChrome OSにも言うことができる。

 Appleも、Googleも、それぞれiOSやAndroidで11型以上のデバイスを製造するすることは技術的には不可能ではない。実際20型や27型のAndroidデバイスも存在している。しかし、例えばAppleが仮に11型のiPad Airを出すと、MacBook Airと競合してしまう。既存のユーザーを切り捨てず(つまり緩やかに移行を進めつつ)に、アプリの断絶問題をどのように解決するかは、両社にとって喫緊の課題になるだろう。

 ユーザーレベルの視点で話をするなら、iPhoneで使っているアプリが、タッチ対応になったMacBook Airでも使えたらどんなに便利だろう。

Threshold世代ではよりアグレッシブな戦略を展開するMicrosoft

 そして、Universal Windows Appsは単なる始まりに過ぎない。Microsoftは2015年に計画している次世代Windowsとなる「Threshold」(開発コードネーム:スレッショルド)でさらにアグレッシブな計画を持っている。

 OEMメーカー筋の情報によれば、MicrosoftはThresholdでSKU構成を見直す事を伝えてきているという。現在のWindowsのSKUは、ビジネス向けのWindows 8 Pro、コンシューマ向けのWindows 8、ARM向けのWindows RTという3本立てだが、Threshold世代ではこれがモバイル向け、デスクトップ向けというように切り分けが切り替えられるという。現在まで筆者が得ている情報をまとめると次のようになるという。

【Windows 8世代でのSKU構成】

ISA Win32 WinRT 電話機能
Windows 8.1 Pro x86 ×
Windows 8.1 x86 ×
Windows RT ARM × ×
【ThresholdのSKU構成(筆者予想)】

ISA Win32 WinRT 電話機能
デスクトップSKU x86 ×
モバイルSKU x86/ARM ×

 こうした情報は現時点ではOEMメーカーに対して暫定的に開示されている話で、現在MicrosoftはOEMメーカーからのフィードバックを待っている状態だという(つまり今後変わる可能性はある)。例年、Microsoftとデバイスメーカーの話し合いは、6月に台北で開催されるCOMPUTEX TAIPEI前後に行なわれるので、そこでさらなるアップデートがされる可能性は高い(実際、Smaller Screen Programの概要が明らかにされたのは昨年のCOMPUTEX TAIPEIだった)。

 重要なことはモバイル向けのSKUはタブレットとスマートフォンの両方をカバーするバージョンになり(つまり電話機能が統合される)、WinRTベースのWindowsストアアプリだけが動くバージョンになるということだ。

 現在のWindowsタブレット(x86/ARM問わず)では、Windowsデスクトップという下位互換を実現するためにメモリ食いの環境をサポートする必要があるため、Windowsのコードは膨大になっているが、その下位互換性を捨てられればWindowsをもっと少ないメモリで動かせるはずだ(もちろんそのためにはOfficeがWinRTベースのWindowsストアアプリになる必要がある)。従って、CPU/GPUやメモリ、内蔵ストレージに対する要件はより緩くすることができるはずで、現時点ではサポートされていないローエンドのARM SoC(例えばMediaTekやRockchipのSoC)でWindowsをサポートできるようになる可能性が高い。

 これに対してデスクトップ向けSKUは、現在のWindows 8.1の直接の後継として、引き続きWin32アプリも動かすことができる。もちろん、このデスクトップ向けSKUではx86プロセッサでのみサポートされる。現在のところ、ThresholdでもノーマルとProと分かれるのかは明確になっていない。

 もちろん、デスクトップ向けSKUでもWinRTのWindowsストアアプリは利用できる。つまり、WinRTのWindowsストアアプリで、4型〜数十型まで同じアプリが動くという特徴はそのままThresholdでも引き継がれることになる。

 なお、6月上旬にはAppleが、6月末にはGoogleがそれぞれ開発者向けのイベントを開催する。両社ともこのアプリの断絶問題に対してどのような答えを出してくるのか、筆者としてはそこに注目していきたい。両社がそこの交通整理ができないようであれば、2015年以降Universal Windows AppsがMicrosoftの大きな強みになることだろう。

(笠原 一輝)