組み込みOS適材適所 《Windows Embedded CE編》(2) ―― μITRONシステムからWindows Embedded CEシステムへの移行手順
前回の記事では,Windows Embedded CE(以後,CEと表記)の概要,CEとμITRON(以後,ITRONと表記)の違いについて解説しました.今回は,ITRON上で実現されたシステムをCEに移行する手順を,実機を使用して解説します.(編集部)
技術解説シリーズ「組み込みOS適材適所 《Windows Embedded CE編》」 第1回 まず,μITRONとWindows Embedded CEの違いを理解する |
1.マイグレーションの手順
1) ITRONプラットホーム・システムの解析
●システムの構造を把握する
システムの移行にあたり,まず以下の点を洗い出します.
- タスクの状態遷移,タスク間シーケンス
- ハードウェア・アクセスカ所
- TRONシステム・コールの使用カ所,使用パラメータ
- ミドルウェアの使用カ所,API仕様
可能であれば,ITRONシステムの構造をソース・コード単位で図1のように分けられれば,効率的に移行することができます.
図1 ITRONシステムの構造解析
●状態遷移・シーケンスなどは可視化しておく
実際のシステムではタスクが数多く存在する場合や,タスク間で複雑な同期処理を行っている場合があります.動作検証時に,移行したシステムが移行前のシステム同様の動作をするか確認するために,各タスク間の関連図やシーケンス図などを作成しておくことをお勧めします.
2) 移行方法の検討
移行にあたってITRONシステムで作成した資産を流用できれば,開発工数や期間の縮小に少なからず寄与することは明白です.ですので,できるだけコードに変更を加えずに流用する方法を検討します.例えば,シリアル通信時の送信データ作成や受信データ解析といった処理は,OSアーキテクチャの差異がほとんど影響しないため,そのままの流用が見込めます.
逆に,ハードウェア・アクセス部や割込みといった処理は,CEではデバイス・ドライバとして実装する必要がありますので,ほぼスクラッチでの開発となります.
基本的に表1に示した方法および図2のようなイメージで移行できるかを検討します.
表1 移行方法
図2 移行方針のイメージ
3) CEプラットホーム・システムの構築
要件に応じて,CEの実行環境を作成します.通常のCEプラットホーム・システムの開発では,
- リファレンス・ボード及びBSP(Board Support Package)の入手
- 性能評価
- カスタム・ボードの作成
- カスタム・ボード用BSPの作成,デバイス・ドライバの作成,OSデザイン
- SDK(Software Development Kit)作成
- アプリケーション作成
- テスト
といった流れで進めていきますが,マイグレーション時も同様の流れとなります.また,4.の作業時に,ITRONシステムでのハードウェア・アクセス部/割込み処理/ミドルウェアの移行を,6.のアプリケーション作成時に各種処理タスクの移行を行います.
4) 動作検証
最後に動作検証を行います.CEでは,スレッドの遷移や待ち状態をリモートで監視・計測するツールなど,テストを効率的に行うためのツールが標準で付属されています.これらのツールを活用して,ITRONシステムでの挙動がCE上のシステムで実現できているかを確認します.