特集
» 2006年11月07日 00時00分 UPDATE

組み込みOS技術解説:いまさら聞けない Windows XP Embedded入門 (3/3)

[杉本拓也(株式会社富士通ソフトウェアテクノロジーズ),@IT MONOist]
前のページへ 1|2|3       

カスタムコンポーネントの作成

 XP Professionalを利用する際、OS標準のドライバだけでなく、各メーカーから提供されているドライバが必要な場合もある。XP Embeddedも同様であり、ターゲットハードウェア固有のドライバは後から追加しなくてはならない。XP Professionalとは異なり、この追加作業には「ドライバのコンポーネント化」というものが必要となる。

 コンポーネント化には、Component Designerというツールを利用する。Component Designerは、メーカーから提供されたドライバのINFファイルを解析し、必要なファイルやレジストリをコンポーネントという形で生成する。

Component Designer 画面1 Component Designer

 また、ユーザーが開発するアプリケーションも同様にコンポーネント化することで、OSの構築時にOSイメージに格納できる。ただしドライバと異なり、アプリケーションにはINFファイルが存在しない。そこで、アプリケーションが必要とするファイルやレジストリなどをComponent Designerを使って手作業で入力し、コンポーネントを作成する必要がある。

 これらの作業によって、コンポーネント「SLDファイル」が生成される。

コンポーネントの登録

 作成したコンポーネントは、Windows Embedded Studioが提供するデータベース(Component Database)に登録する必要がある。この作業を行うことにより、XP Embedded開発環境の中心となるTarget Designerにコンポーネントが表示されるようになる。

 コンポーネントを登録するツールが、Component Database Managerである。

Component Database Manager 画面2 Component Database Manager,c

初期OSイメージの形成と生成

 ターゲットのハードウェア情報(device.pmq)と、作成したすべてのカスタムコンポーネントがデータベースに登録されれば、Target DesignerによるOSの構成作業が可能になる。

Target Designer 画面3 Target Designer

 Target Designerで各種のコンポーネントを選択・非選択することで、ランタイムOSへの機能の追加・削除を行う。前述したように、コンポーネントはそれぞれ依存関係が結ばれており、選択したコンポーネントが必要とするサブコンポーネントは自動的に追加される。

 また、通常のコンポーネント以外に「マクロコンポーネント」という機能も提供されている。例えば、セットトップボックスのようなデバイスを作成する場合は「Design Templates-Basic Set Top Box」を選択する。これにより、Internet ExplorerやTCP/IP関連モジュールなど、セットトップボックスに必要と思われる機能が自動的に追加される。



 XP EmbeddedはXP Professionalとバイナリ互換で、同じアプリケーションやドライバが動作する。Internet ExplorerやWindows Media Playerなども通常のデスクトップPCと同じものが利用できるため、高度な組み込みデバイスを設計・開発できる。

 また、非常に分かりやすい開発環境(ツール)が提供されている。開発者は容易にOSを構築できるため、XP Embeddedの起動までは簡単に作業が進むと思われる。

 しかし、XP Embeddedでは最終的なレジストリ設定やコンポーネント選択は開発者が行うため、XP Professionalと異なる動作をしてしまうことも多々ある。また、EWFはXP Professionalには存在しない機能であるため、これを熟知したうえでOSやハードウェア構成を設計する必要がある。

 来月からは、XP Embedded開発のキモを解説する新連載を開始する予定だ。Enhanced Write Filterの仕組みや設計指針なども詳しく紹介していこうと思う。

前のページへ 1|2|3       

Copyright © ITmedia, Inc. All Rights Reserved.