ゼロから始めるEnhanced Write FilterとHORM:Windows XP Embedded開発入門(1)(2/3 ページ)
Windows XP Embeddedによるシステム構築のキモとなるのが、EWFとHORMである。まず、この2つをマスターしよう
Enhanced Write Filter環境構築
ここでは、OSランタイムイメージにEWFの機能を実装する方法を説明します。
コンポーネントの追加
EWFは「Enhanced Write Filter」コンポーネントとして提供されています。Target Designerでこのコンポーネントを組み込むことで、EWFを実装できます。
Enhanced Write Filterコンポーネントは、Target Designerのコンポーネントウィンドウの[Software]−[System]−[System Services]−[Base]にあります。また、EWFを構成するには、以下のコンポーネントも必要です。
- EWF NTLDR
- EWF Manager Console application
- Enhanced Write Filter API
「EWF NTLDR」は、EWF用に最適化されたNT Loaderです。EWFの構築には必須のコンポーネントです。
「EWF Manager Console application」は、EWFの機能をコマンドラインから扱うツールです。実体はewfmgr.exeであり、代表的な利用方法は以下のとおりです。
ewfmgr /enable | /disable | /all | /commit | /restore
/enable | EWFの有効化 |
---|---|
/disable | EWFの無効化 |
/all | EWF情報の表示 |
/commit | EWFオーバーレイ情報の保護パーティションへのコミット |
/restore | EWFオーバーレイ情報の破棄 |
「Enhanced Write Filter API」は、ewfmgr.exeの機能をDLL(実体はewfapi.dll)として提供しています。EWFの操作の大半は前述のewfmgr.exeで行えますが、専用のアプリケーションからEWFを制御し、結果を取得したい場合などに利用します。
コンポーネントの設定
Target DesignerでEWFコンポーネントを組み込んだら、Enhanced Write Filterコンポーネントの設定を行います。
「EWF Volume Configuration」でEWF全体の設定を、「Protected Volume #」で保護するパーティションごとの設定を行います。
EWF Volume Configuration | |
---|---|
Maximum Number Protected Volumes | 保護するボリューム数 |
Maximum Number of Overlay Levels | オーバーレイレベルの最大数 |
EWF Partition Size in KBytes | EWFパーティションのサイズ |
Protected Volume # | |
---|---|
Start EWF Enabled | FBA直後におけるEWFの有効/無効の設定 |
Enable Lazy Write | 書き込み設定 |
Disk Number | 保護するパーティションが存在するディスクの番号 |
Partition Number | 保護するパーティションの番号 |
Disk Type | 保護するディスクの接続形式 |
Optimization Option | パフォーマンスの設定 |
例えば、IDEハードディスクをCドライブ(システムドライブ)とDドライブ(ユーザー領域)の2パーティションに分割したハードウェア構成で、CドライブをRAM Modeで保護する場合は下記のような設定となります。
Maximum Number of Protected Volumes | 1 |
---|---|
Maximum Number of Overlay Levels | 1 |
EWF Partition Size in KBytes | 0 |
Disk Number | 0 |
Partition Number | 1 |
Disk Type | IDE |
Overlay Type | RAM |
EWF Partition Size in KBytes | RAM Mode、RAM Reg Modeの場合は「0」。Disk Modeの場合は保護するパーティションサイズと同等あるいは1.5倍程度の値 |
EWFの設定を行った後は依存関係のチェックを行い、OSランタイムイメージのビルドを行います。
ターゲットの準備
次にターゲットメディアの準備を行います。EWF環境を構築する際は、EWFボリュームを作成するための空き領域をメディアに用意する必要があります。例えば、512MbytesのCFにCドライブのみ、RAM Modeでシステムを構築する際は、Cドライブ用のパーティションを510Mbytesで作成し、EWFボリューム用に若干の空き領域を残しておきます。
EWFボリュームは、FBAの際にEWFコンポーネントが空き領域に作成します。Disk Modeの場合は、「EWF Partition Size in Kbytes」で指定したEWFオーバーレイのサイズ分だけの空き領域を確保する必要があります。
準備したメディアにOSランタイムイメージをコピーし、FBAが終了するとEWF機能を持ったOSランタイムイメージが起動します。ewfmgr.exeでEWFの情報が取得できれば、EWFの構築は成功です。
Copyright © ITmedia, Inc. All Rights Reserved.