今回はESEC2009レポートの最終回として、「UI」に関する講演や「OS高速起動」デモなど、筆者が注目した技術・取り組みについて紹介する!!
開催直前! ESEC2009速報「“サポート15年”Windows Embeddedの開発テク」でお伝えしたとおり、マイクロソフト・ブースのメインシアターでは、3日間で計22ステージもの無料テクニカル・セッションが行われた。
今回は、ESEC最終日(2009年5月15日)に行われた「新しいユーザーインターフェイス −.NET Framework 3.5とSilverlight−」に関するセッションの模様をお伝えする。登壇したのは、同社 デベロッパー&プラットフォーム統括本部 エバンジェリスト 荒井 省三氏。組み込み開発における“ユーザーインターフェイスの重要性”について同社ならびに同氏の考えが披露された。
講演の冒頭、荒井氏は「どんな技術を使ってシステムを開発するのかだけではなく、ユーザーインターフェイスの重要性・大切さをきちんと理解してほしい。組み込み機器にもリッチなユーザーインターフェイスが必要になってきている」と語った。
新機能をソフトウェアやハードウェアで実現すること、これも1つの売りにはなるが、必ずといってよいほど他社から同様の新機能を搭載した機器が発売される。つまり、新製品の開発において“新機能を追加した”というだけでは“差別化したことにならない”のだ。「重要なのは、こうした新機能を意識させないでユーザーに使ってもらうことだ」と同氏はいう。
さらに、高機能・多機能化が進み、複雑化する機能を“触ってみたくなるインターフェイス”で提供することの大切さについて、次のように説明した。「ユーザーに機能を意識させることなく、“楽しい”“触ってみたい”と思わせること。これが結果的に価値を生み出すことにつながり、また新機能が受け入れられたということになる」(同氏)。
「例えば、任天堂のWiiがヒットしたのは、WiiコントローラやバランスWiiボードに搭載されたセンサのおかげではない。センサ技術自体は特別新しいものではない。その要因は、ユーザーの動きとゲームが連動する点にある。Wiiは、触ってみたいと思わせるインターフェイスで価値を生み出した好例。今後、組み込み業界もこういったインターフェイス作りにもっとコストを掛けていかないと差別化競走に勝てない」と同氏はいう。
同社は、.NET Framework、.NET Compact Framework、Silverlight、WPF(Windows Presentation Foundation)などの最新テクノロジを使ったアプリケーション開発を推し進めている。講演中、リッチなユーザーインターフェイスを用いたコンセプトモデルとして、「新しい店舗ソリューション」のデモンストレーションが行われた。
またマイクロソフト・ブースでは、パートナー各社による製品展示・デモンストレーションが行われていた。その中で特に興味深かったのが、富士通ソフトウェアテクノロジーズによる「Windows Embedded CE高速起動」のデモンストレーションだ(同技術について、マイクロソフト・ブースのミニシアターで講演も行われた)。
Windows Embedded CEにおける標準の高速起動アプローチとして「ウォームブート」がある。OSイメージがあらかじめメインメモリに展開されているため、通常起動時に走るブートローダの処理を飛ばしてカーネルの起動から行える。しかし、メインメモリに電力が供給されている状態なので消費電力の課題がある。また、カーネルの起動、各種ドライバ・サービスの起動、アプリケーションの起動については通常起動と同じだけの時間がかかってしまうという。また、NOR型フラッシュメモリやハイブリッドのNAND型フラッシュメモリなどに保存されたOSイメージを利用して高速起動する「XIP(eXecute In Place)」によるアプローチもある。こちらはブートローダでの処理がほとんどなくなるが、カーネル起動以降の処理で多少時間がかかってしまうケースがあるという。
同社はこうした現状の問題点から、「ハイバネートブート技術」と「パラレルブート技術」の2つの独自技術による高速起動のアプローチを提案した。
ハイバネートブート技術とは、Windows Embedded CE動作中の実行状態のスナップショットを保存しておき、次回起動時に通常の起動シーケンスを通さずに、実行中の状態を復元する方式。これにより、起動後すぐにアプリケーションが利用可能になるとのこと。同社はこの技術により、最大50%の起動時間の短縮を実現するとしている(注)。「ストレージに実行状態のスナップショットを保存するため、ストレージの速度に依存してしまうが、高速なストレージを用いれば効果がある。KIOSK端末のようにアプリケーションの起動時間が長い機器の場合は、アプリケーションが起動されている状態をスナップショット化しておけば、電源ONで高速に起動できる」(説明員)。
もう一方のパラレルブート技術とは、Windows Embedded CEの起動処理において、各種ペリフェラルの初期化処理を並列実行してCPUリソースを最大限利用し、さらに必要なドライバやサービスを取捨選択して起動することで、OSの起動時間を短縮させる方式。こちらは最大28%の起動時間の短縮を実現するという(注)。「ハイバネートブートの場合はスナップショットを保存するためのストレージが必要になるが、パラレルブートであれば現状使用しているOSイメージに手を加えるだけで実現できる技術」(説明員)。
両技術のターゲットは、デジタル・サイネージやKIOSK端末、プロジェクタなど。起動して画面をすぐに表示させる必要のあるデバイスに適しているという。
Copyright © ITmedia, Inc. All Rights Reserved.