特集
» 2009年12月08日 00時00分 UPDATE

ET2009 Windows Embeddedレポート:リッチなユーザー体験をもたらすCE 6.0 R3の新機能 (1/3)

ET2009のカンファレンスでマイクロソフトは「Windows Embedded CE 6.0 R3」の概要を説明。その内容と展示ブースの模様をお伝えする。

[八木沢篤,@IT MONOist]

 ET2009開催2日目(2009年11月19日)、マイクロソフトはパシフィコ横浜の会議センターにおいて、プライベートカンファレンス「Windows Embeddedセミナー」を開催。

 マイクロソフト OEM統括本部エンベデッド本部 パートナーテクノロジーマネージャー 永田 哲氏が「Windows Embedded CE 6.0 R3 概要」と題し、Windows Embedded CE 6.0 R3(以下、CE 6.0 R3)の新機能に関する講演を行った。

 本稿では、永田氏の講演内容とCE 6.0 R3の発表会見(同日午前中)で行われたデモンストレーションの模様を基に、CE 6.0 R3の新機能・魅力についてお伝えする。また、最後にマイクロソフト・ブースの模様も併せて紹介する。


Windows Embedded CEとは?

 Windows Embedded CEは、マイクロソフトが提供する組み込み向けOS製品群「Windows Embedded」ファミリの1ラインアップとして位置付けられ、主にハンドヘルド端末、PND、ポータブル・メディア・プレーヤ、デジタル・フォトフレームなどの組み込み機器で利用されている。

永田 哲氏 画像1 マイクロソフト OEM統括本部 OEMエンベデッド本部 シニアテクノロジースペシャリスト 永田 哲氏

 Windows Embedded CEは、メモリ保護機能、仮想メモリをサポートする32ビット リアルタイム/マルチタスクOSで、組み込み機器で利用されているさまざまなCPUアーキテクチャ(ARM、MIPS、x86、SH4(注))がサポートされている。また、各機能がコンポーネント化されているため、デバイスごとに必要な機能を選択し、構築することが可能で、最小で300Kbytes程度という小フットプリントを実現する。

 「PC/サーバ、モバイル分野のWindows OSで培われたネットワーク技術や高度なユーザーインターフェイス(UI)、豊富なミドルウェアやアプリケーションを有する」と、マイクロソフト OEM統括本部 OEMエンベデッド本部 シニアテクノロジースペシャリスト 永田 哲氏。

※注:SH4は、R3で追加された機能・アプリケーションがサポートされていない(動作保証外)。詳細:Windows Embedded CEの概要。


 永田氏は、CEの歴史を次のように振り返る。「CEは、3.0から本当の意味でリアルタイム性を達成したといえる。その後、CE .NETで.NET Compact FrameworkのサポートやWindows Mediaによるビデオ再生機能、Internet Explorerを搭載。さらに、シェアード ソース プログラムの下、これまでブラックボックスだったソースコードを公開。そして、CE 5.0では、デバイスごとのシナリオの強化、Bluetooth対応が行われ、CE 6.0でアーキテクチャの刷新を行い、メモリ/プロセス数の拡大を図ってきた」。

Windows Embedded CEの歴史 画像2 Windows Embedded CEの歴史

Windows Embedded CE 6.0 R3

 今回、新たにリリースされたCE 6.0 R3の強化ポイントについて、永田氏は、

  1. リッチなユーザー体験
  2. 充実したインターネット機能
  3. 接続の容易性

の3つを挙げる。

 具体的にいうと、CE 6.0 R3では、「タッチ/ジェスチャー」、Silverlight 2.0ベースの「Silverlight for Windows Embedded」、Internet Explorer 6.0ベースのWebブラウザ「Internet Explorer Embedded」のほか、「Adobe Flash Lite 3.1.0」にも対応する。また、「接続マネージャ」や「Office/PDFドキュメントビューア」、中国で有名なメッセージングサービス「QQ Messenger」などの機能が備わっている。

CE 6.0 R3の紹介 画像3 CE 6.0 R3の紹介

 このように新機能が増えると、開発工数の増大が懸念されるが、「マイクロソフトは統合開発環境『Visual Studio』のほか、UIデザインツール『Expression Blend』を提供している。Silverlight for Windows Embeddedを用いたアプリケーション開発において、プログラムの実装とUI設計を分離・並行して作業が行えるようになる。この2つの開発環境を用いて開発できるようにしたことは、CE 6.0 R3でのチャレンジングな取り組みだった」(永田氏)。

新しいユーザーインターフェイス開発環境 画像4 新しいユーザーインターフェイス開発環境

 以降では、Silverlight for Windows Embedded、Internet Explorer Embedded、Adobe Flash Lite 3.1.0にフォーカスし、その概要を紹介する。

Silverlight for Windows Embedded

 PC分野で使われている「Silverlight」は、Webブラウザ上で動作するアプリケーションだが、「Silverlight for Windows Embeddedは、Silverlight/WPF(Windows Presentation Foundation)の開発手法を取り入れられるUIフレームワークという位置付け」(永田氏)であり、ネイティブC++アプリケーションと結合することで、リッチなUIを搭載したCEアプリケーションを簡単に作成できる技術だ。

Silverlight技術を活用したリッチなUI 画像5 Silverlight技術を活用したリッチなUI

 「勘違いしないでほしいのが、CEのブラウザ上で動作するものではないということ。Silverlight for Windows Embeddedは、Silverlight/WPFの開発手法によるリッチなUIを持ったアプリケーションを組み上げることができる仕組みだ。また、Silverlight 2.0でサポートされていないH/Wアクセラレーションに対応しているのが特長だ」(永田氏)。

<Silverlight for Windows Embeddedの特長>

  • Expression BlendによるUI開発
  • ネイティブC++によるコード記述
  • H/Wアクセラレーションの利用
  • Silverlight 2.0のサブセット
UIアーキテクチャ 画像6 UIアーキテクチャ 
Expression Blendで生成したXAML(Extensible Application Markup Language)を、Native XAML APIセットでアプリケーションから呼び出す。そして、XAMLのタグに従いSilverlight Coreがレンダリングを行う。なお、レンダリングの際は、GWES(Graphics Windowing and Events Subsystem)やGPUプラグイン(OpenGL、DirectDrawなど)が使われる

 Silverlight for Windows Embeddedの機能を有効にするには、OSの構築の際、カタログからSilverlight for Windows Embeddedランタイムを選択するほか、レンダープラグインも追加する必要がある。その後、実際にC++でアプリケーションを作成するわけだが、その際、WinMain関数内にSilverlight for Windows Embeddedを利用するための単純な呼び出しコードを実装する必要がある。

Silverlight for Windows Embeddedの実装例 画像7 Silverlight for Windows Embeddedの実装例

 ただし、Expression BlendとVisual Studioとのシームレスな連携は残念ながら実現していないという。「Expression Blend 2 SP1で生成されたXAMLのテキストファイルを、そのまま手作業でアプリケーションの開発環境側(Visual Studio 2005)に持っていく必要がある」(永田氏)。

Expression Blend 2 SP1によるUI開発画面の様子 画像8 Expression Blend 2 SP1によるUI開発画面の様子
Expression Blend(開発マシン)上で実行させた様子 画像9 Expression Blend(開発マシン)上で実行させた様子
CE 6.0 R3を搭載した実機上でのデモンストレーションの様子 画像10 CE 6.0 R3を搭載した実機上でのデモンストレーションの様子

 UI設計とプログラム実装を分離して作業できるため、以下のようにXAMLを変更するだけで、UIデザインを変えることができる。

XAMLを変更するだけで、UIデザインを変更できる 画像11 XAMLを変更するだけで、UIデザインを変更できる

 以下の動画は、CE 6.0 R3の発表会見で披露された多機能リモコン(開発:セカンドファクトリー)の試作機のデモンストレーションの様子だ。通常のテレビリモコンのような用途のほか、番組表確認、ビデオコンテンツの再生などが行える。また、利用者に応じてUIを切り替えることも可能だ。

 
動画1 CE 6.0 R3を搭載した多機能リモコンのデモンストレーション(その1)   動画2 CE 6.0 R3を搭載した多機能リモコンのデモンストレーション(その2)
再生ボタン押下後、右下のアイコンをクリックすると全画面表示。

 
動画3 CE 6.0 R3を搭載した多機能リモコンのデモンストレーション(その3)   動画4 CE 6.0 R3を搭載した多機能リモコンのデモンストレーション(その4)
再生ボタン押下後、右下のアイコンをクリックすると全画面表示。


       1|2|3 次のページへ

Copyright© 2017 ITmedia, Inc. All Rights Reserved.