勝手に想像! 開催直前でWindows 8に期待すること:BUILD(2/3 ページ)

» 2011年09月12日 22時17分 公開
[鈴木淳也(Junya Suzuki),ITmedia]

ARMで“PC版”ベースのアプリケーションは動くのか?

“すべてのサイズのデバイスにWindowsを”がWindows 8のコンセプトだ

 間もなく始まるBUILDでは、Windows 8の詳細が明らかになると期待されている。9月12日には報道関係者にBUILDで発表する情報を事前に公開するという“うわさ”もあるが、ここでは、Microsoftがこれまで明らかにしてきた情報を整理したうえで、事前に公開するという情報の“予想”にも挑んでみる、

 まず、Windows 8について、現時点で明らかになっていない、または、疑問とされている項目をまとめておこう。

  • ARM搭載デバイスにおける“PC版”ベースアプリケーションのサポート
  • Windows 8のアプリケーション開発環境と配布方法
  • Windows 8におけるエディション構成と提供モデル


 これまで「ARMで動作する」「タブレットデバイス用に新しいUIを導入する」といった情報は公開されてきたが、その“内部”については明らかになっていない。そのため、「既存の“PC版”ベースのWindowsアプリケーションがそのまま動くのか?」「Windows 8では異なるデバイスをターゲットにして、どのようにアプリケーションを開発すればいいのか?」といった根本的な部分が不明だった。開発者向けカンファレンスのBUILDで、その秘密が明らかになることと期待されている。

 MicrosoftでWindows 8の開発チームを率いるスティーブン・シノフスキー氏は、「Building Windows 8」という公式ブログをスタートさせ、BUILDに向けてWindows 8の情報を定期的に公開している。これまでに、従来のInternet Explorerを改良することやUSB 3.0のサポート、Mac App Storeにようなアプリストアの導入、Hyper-Vのサポートといった情報が、シノフスキー氏のブログで明らかになっている。だが、前述のような“PC版”ベースアプリケーションのサポートや、Windows 8をターゲットとした開発環境については、このブログでも触れられていない。そこで、これらのポイントがそのような扱いになるのか、その可能性について推察してみたい。

ARMで“PC版”ベースアプリケーションは動く?開発環境は?

 現役のARMがx86系CPUと比べて非力なことは語るまでもない。その一方で、既存の“PC版”ベースのアプリケーションを動作させるにはx86系CPU向けに記述されたネイティブコードをバイナリトランスレーション、あるいは、エミュレーションの形で実行するしかない。これらをARMで実行すると、パフォーマンスの大幅な低下が予想される。そのため、ARM版Windows 8では“PC版”ベースのアプリケーションをサポートしない、あるいは、非常に限定的なサポートになる可能性が高い。

ARMデバイスでビデオ再生を行う。タスクマネージャに4つのCPU負荷率が表示されているが、これはNVIDIAが開発中の“Kal-El”でデモを行っていることを示している

 ARMとx86では命令セットが異なるため、そのままでは互いのネイティブコードを実行できない。x86であればARM環境のエミュレーションを実行するのに十分なパフォーマンスはあると思われるが、x86向けに専用バイナリを用意したほうが実行効率は高い。

 そのため、Visual Studioのような開発環境では1つのソースコードでARMとx86の2つのプラットフォーム向けのアプリケーションを開発できるようにして、コンパイルで2つのターゲットに向けた2種類のバイナリを同時に生成することが考えれる。この場合、開発自体はx86マシンで行うことになるが、動作検証のためのARMエミュレータが同時に提供されるだろう。これは現行のWindows Phone 7と同様だ。

 問題はアプリケーションの配付形態で、前述のようにWindows 8がアプリストアを導入するのであれば、オンライン購入時にターゲットデバイスに適したバイナリがダウンロードできるようにすればいい。DVDのようなディスクメディアの配布であれば、2種類のバイナリが1枚のディスクに収録され、インストールで適切なバイナリが導入されるというユニバーサルバイナリの仕組みになる可能性がある。

 ただ、台湾で開催された6月のパートナーイベントであった「すべてのアプリケーションはHTML5で記述される」という発言に注意する必要がある。Officeを含むすべてのアプリケーションがHTML5を採用する可能性は低いと考えたいが、「共通コードで複数デバイスをターゲット」という目的を優先させる場合、HTML5も選択となりえる。そうなると、アプリケーションの種類や配布形態によって、ハイブリッドに環境が使い分けられるようになると考えられる。

 さらに、ARMによる“PC版”ベースアプリケーションのサポートとの関連で、ネイティブコード生成においてもどこまで従来のハードウェア環境がサポートされるのかという点が問題になる。具体的には「ARM向けのWin32コードが記述できるのか」といったものだ。従来のWin32で動くことを前提としたアプリケーションがあったとして、ソースコードをリコンパイルするだけでそのままARMで動くのかという点がここでポイントになる。

 ARMのパフォーマンスが低いこともさることながら、搭載するメモリもPCと比べて少ない。現状のスマートフォンに搭載されたARMがシングルコアで1GHz駆動、搭載するシステムメモリの容量が256〜512Mバイト程度、ハイエンドモデルでも1〜1.5GHz駆動のデュアルコアでシステムメモリが1Gバイト搭載であることを考えれば、その動作環境はWindows XP時代の初期に近い。

 Windows 8の登場時期が2012年後半であり、そのころにはクアッドコア搭載やDirectX 11サポートが標準になったARM Cortex-A15世代が登場して、パフォーマンスやリソースの問題がある程度解決する可能性もある。だが基本的には、PCより少ないリソースで、“PC版”ベースのアプリケーションをどこまで動作できるのか、あるいは、できないのかが、BUILDに参加する開発者が最も注目する情報になるだろう。

 いずれにせよ、この違いすぎるハードウェア環境を意識したプログラミングが、Windows 8時代の開発者には求められるはずだ。

Copyright © ITmedia, Inc. All Rights Reserved.

アクセストップ10

2026年10月24日 更新
  1. “置き場所に困る”大容量ポタ電の壁を打破! 冷蔵庫を3日動かすEcoFlow「DELTA Gen4」シリーズが日本上陸 (2026年10月23日)
  2. 若者向けのカラフルな新「Dell 14S」が日本上陸 11月1日まで4.5万円引きの14万9800円から (2026年10月22日)
  3. 「Galaxy Watch9」を1週間使って分かったこと Pixel Watchと比べた使い勝手は? (2026年10月23日)
  4. FCCLが「FMV Keyboard X」の一般販売を開始 ハイスペックマウス「FMV Mouse X」も同時発売 (2026年10月22日)
  5. 折りたたみ型から薄型まで! スマホやタブレットで“本気”の文字入力に使える持ち運び用キーボードを選ぶコツ (2026年10月23日)
  6. 「iPhone Duo」を1週間使って分かった、全部盛りではない“上質さ” 心地いい開閉ヒンジの内部を見るために“非破壊検査”してみた (2026年10月21日)
  7. 天空が12月25日に発売する「GPD WIN Max 3」国内正規版 実機に触れてきた (2026年10月23日)
  8. 約22万円の新型「Mac mini」で初めてのローカルAI体験 ストレージの価格高騰対策にピッタリかも (2026年10月20日)
  9. スマホは「バッグの中」から「外」へ AULUMUのスリングバッグ2種で移動時のプチストレスを解消した (2026年10月22日)
  10. PFUから33万円キーボード「HHKB Professional Elite」登場! 英語配列のみで有線特化の“原点回帰” 全世界300台限定 (2026年10月22日)
最新トピックスPR

過去記事カレンダー