ハードウェアやソフトウェアの改善により、コンピューターを用いた生活が一変するのは読者方々が一番ご存じだが、Windows 8(開発コード名)でも両面からのアプローチで、様々な改善が行われている。今週のレポートはWindows 8の公式ブログに掲載された情報を元に、Windows 8の最新動向を紹介する。

再び「プッシュ型サービス」の時代が始まる

Windows 8の新UI(ユーザーインターフェース)となる「Metro(メトロ)」。その上で稼働するアプリケーションをMicrosoftは「Metroスタイルアプリ」と称しているが、以前のレポートでも述べたように、同社は通常のコンピューター向けとして従来のデスクトップUIを提供し、Metro UIをモバイル端末向けUIとして提供する予定である(図01)。

図01 Windows 8のメトロUI。Metroスタイルアプリと呼ばれるアプリケーションが並んでいる

既にWindows 8 Developer Preview版を試した方ならご存じのとおり、各Metroスタイルアプリは、動的に株価や天気といった最新情報を映し出しているが、この動作に疑問を持ったことはないだろうか。これは同社のクラウドプラットフォームであるWindows Azureとの連動によって実現された結果だ。通常のOSと異なるWindows Azureは継続的に機能拡張されており、つい先頃もスマートフォンやWindows 8との接続を実現するためのツールキットやSDK(ソフトウェア開発キット)がリリースされている。

この、Windows 8とWindows Azureの連動で実現されたのが、Metroスタイルアプリの情報表示だ。本来であればクライアント側となるMetroスタイルアプリが、情報を取得するためにサーバーへアクセスすればよいが、情報が更新されていない状態でアクセスが発生するのは、リソースを無駄に使ってしまうことになる。

そこで、Windows 8はWindows Push Notification Service(WNS)という仕組みを導入し、Windows Azureからプッシュ配信される情報を取得して、消費するリソースを最小限に抑えながら、リアルタイムに更新される情報をデスクトップに映し出すことを可能にするというものだ(図02)。

図02 プッシュ通知のプラットフォームを図化したもの

例えばMetroスタイルアプリでブログチェックを行っているとしよう。そのブログ側で何らかの変化があった際、アプリケーションサービスはWindows Push Notification Serviceにプッシュ通知を行い、その情報を受け取ったWindows Push Notification Serviceは、アップデート情報があることを示す情報をWindows 8を導入したコンピューターに通知。そして、情報を受け取ったWindows 8は、アプリケーションサービスを展開しているサーバーにアクセスし、データを取得してメトロUI上のアプリケーションに反映するという流れとなる。

同社では、メトロUIによるスタート画面で"すべての情報を提供する"ことを目標としている。現在我々が使っているWindows 7では、Windowsガジェットがその役割を一部分ながら担っていたが、ご存じのとおりWindowsガジェットはOSの起動時間が増加し、起動しているだけでメモリなどのリソース消費につながってしまう。これら諸問題の解決策として生まれたのが、Windows Push Notification Serviceというプラットフォームなのだ。

なお、この概念は決して目新しいものではなく、まだ多くのユーザーがダイヤルアップを用いてインターネットに接続していた時代に生まれたサービス・技術形態である。しかし、非常時接続環境ではプッシュ型の恩恵を受けることが出来なかったため、当時プッシュ型でニュース配信を行っていたサービスは影も形もなくなってしまった。

しかし、いまや常時接続環境が当たり前で、クラウドコンピューティングなどネット上に多くのリソースを置くことが浸透し始めた状況を踏まえれば、Windows Push Notification Serviceは想像以上に有益なプラットフォームになり得るだろう。実際同社の調査結果によると、Windows 8 Developer Preview版で行われている同サービスの更新回数は9,000万回を超えたとのこと(図03)。

図03 データセンターを通過するアクセス分布を世界地図に照らし合わせたもの(公式ブログの動画より転載)

Windows Push Notification Serviceプラットフォームは、Windows 8だけでなくWindows Phoneも含まれており、各OS上で動作するMetroスタイルアプリに影響を及ぼすことになる。同プラットフォームが本格稼働し、同ロジックを用いたMetroスタイルアプリが増えることで、Windows 8の操作性は大きく変化することになるだろう。

ヒートマップでCPU稼働率を視覚化したタスクマネージャー

プロセッサ(CPU)におけるマルチコア化はとどまることを知らない。元々は2000年頃からクロックスピードの高速化が頭打ちとなり、発熱問題や専用回路の限界など様々な問題が発生し、一つのプロセッサパッケージに複数のコアプロセッサを搭載するマルチコア化が始まった。

エンドユーザーレベルにマルチコアプロセッサが浸透し始めたのは2005年頃。AMDが先んじてマルチコアプロセッサを市場に投入したが、後じんを拝したIntelもPentium Dなど新製品を投入。現在のIntel Core iシリーズに至っている。消費電力の軽減やメモリーにおけるボトルネックといった諸問題を解決するため、マルチコア化は加速的に進んでいくのは改めて述べるまでもない。

このようなプロセッサ事情を背景に、Windows 8の公式ブログでは、面白い記事を掲載している。それが160個のマルチコアプロセッサを搭載したコンピューター上で稼働するWindows 8のタスクマネージャーだ(図04)。

図04 160個にもおよぶコアプロセッサをグラフ表示したWindows 8のタスクマネージャー(公式ブログより)

Windows 7やWindows Server 2008 R2では最大256コアをサポートしているが、コンシューマーレベルでこれだけのスペックを持つコンピューターを使用する場面は皆無と思われるが、4コア、8コアといった環境を普段目にしている方には圧巻以外の感想を持ち得ないだろう。

もちろん主題は160コアではない。所狭しと並ぶコアごとの折れ線グラフを見ても全体像を把握できないことを同社は考え、新たにヒートマップと呼ばれる視覚化機能を加えた。各プロセスの負荷と同じように、負荷率の高いコアプロセッサを濃く、低いプロセッサを薄く表示するようになった(図05)。

図05 負荷が高いコアプロセッサは濃く、軽いコアプロセッサは薄く色分けされている(公式ブログより)

ちょうど前々回の記事でタスクマネージャーに関するレポートをお送りしたが、表示情報を切り分けることで視認性を高めるという開発ポリシーが結果に結びついた一例だ。

同ブログで興味深いのが「最大640コア」という一文。既に報じられているように、Windows 8と平行して開発されているWindows Server 8(開発コード名)は最大640の論理プロセッサと最大4TBのメモリをサポートする予定である。現行OSであるWindows 7 UltimateとWindows Server 2008 R2 Datacenterの最大値はいずれも256コア(最大プロセッサ数は前者が2プロセッサ、後者は64プロセッサまでサポート)であることを踏まえると、OS側がサポートすることでマルチコアプロセッサの普及が若干ながら加速化する可能性が高い。願わくばより安価にマルチコア環境を整えられる時代を早く迎えたいものである。

阿久津良和(Cactus