Windows Embedded Compact 7では、OSのカーネルとしてSMPサポートが行われましたが、開発環境側でも“マルチプロセッサ対応”がなされています。Windows Embedded Compact 7を使った開発時に、多大な時間がかかるビルド作業ですが、このビルドプロセスにおいて、開発PCのCPUを有効活用した“マルチプロセスでのビルド”が可能になりました。
Visual Studio上の設定は、標準で開発PCのプロセッサ数を自動判定し、“最大コア”を利用してビルドを実施します。万一、ビルド中に何らかのエラーが発生してしまう場合には、複数のビルド処理によって依存関係が合わない可能性があります。このような場合には、Visual Studio上から以下のオプション設定を“1”に変更し、1コアでビルド処理を実行させるのがよいでしょう。
Visual Studio 2008−[Menu]−[Tools]−[Option]−[Platform Builder]
Multiprocessor Build 0:自動認識/1:シングル/N:利用するプロセッサ数
実際に、以下の環境でWindows Embedded Compact 7のOSビルドを行い、ビルド時間を計測してみました。
ビルド時間を測定した結果、以下のようになりました。
Windows Embedded Compact 7およびWindows Embedded CE 6.0のビルドプロセスは、多くのファイルアクセス(作成、コピー、削除)が行われます。上記“Rebuild Current BSP and Subprojects”は、実際のコードのコンパイル・リンクから、OSイメージとして単一ファイル(nk.bin)を生成するまでの時間を計測しています。
選択するビルドメニューによっては、ビルドプロセスとして重要なSysgenフェーズが実行され、上記以上のビルド時間がかかることがあります。なお、今回の計測結果から、8コアの場合、1コアの約半分の時間でビルド作業が完了していることが分かります。
さて今回は、Windows Embedded Compact 7から強化された機能の詳細説明と、Windows Embedded CE 6.0との比較について解説しました。次回は、Windows Embedded Compact 7で更新された開発ツールにフォーカスした内容をお届けしたいと思います。ご期待ください! (次回に続く)
Copyright © ITmedia, Inc. All Rights Reserved.