組み込みOS適材適所 《Windows Embedded CE編》(1) ―― まず,μITRONとWindows Embedded CEの違いを理解する

中田 佳孝

tag: 組み込み

技術解説 2009年9月 2日

本連載では,ITRON準拠OSからWindows Embedded CEへのシステム移行に必要な基礎知識について解説する.Windows Embedded CEは,パソコン用のWindows OSとは別に開発された組み込みアプリケーション専用のOSである.実行コンテキストや同期処理といった概念については,ITRON準拠OSとWindows Embedded CEの間に大きな差異はない.一方,ハードウェア・アクセスが関係する処理については違いがあり,システム移行にあたって,デバイス・ドライバ開発などの作業が必要になる.(編集部)


 μITRON(以後,ITRONと表記)は,組み込み機器向けのリアルタイムOSの仕様です.一般にITRONというと,この仕様に準拠して実装されたOSを指します.タスク制御や同期処理といったシステム・コールが規定されています.ソフトウェアの設計の自由度が比較的高いOSで,かつ国産ということもあり,ITRON仕様に準拠したOSは国内の組み込みシステムで多く使用されています.

 ITRON準拠のOSは,半導体メーカやハードウェア・ベンダなど,さまざまな企業で実装されています.基本的なシステム・コールのみ実装されたものもあれば,ファイル・システムやTCP/IPプロトコル・スタックといった機能が標準で付属するものもあります.

 ITRON準拠OSを搭載したシステムに対して,新たにデバイスやサービスの追加といった機能拡張を行う場合,別途ミドルウェアを用意することが多いかと思います.しかし,ベースとなるシステムとミドルウェアの設計思想が必ずしも同じであるとは限りません.ベース側もしくはミドルウェア側に対して,少なからずカスタマイズが必要になります.ですが,機能追加ごとに(特にベース側に)カスタマイズの作業が発生することは,コストや品質の観点から考えて好ましくありません.

 特に近年,CPUやデバイスの高性能化,多機能化に伴って,組み込みシステムに求められる性能や機能も高くなってきており,こうした機能追加のニーズが多くなってきています.例えばPOS(Point of Sales)システムやPDA(Personal Digital Assistant),ハンディ端末などは,対応接続デバイスやプロトコルの多様化が顕著です.

 こうした背景から,最近筆者は,「ITRONを使用しているが,Windows Embedded CEや組み込みLinuxといった,多機能で機能追加が比較的容易なOSへ乗り換えたい」という相談を,よく持ちかけられるようになりました.

 本稿では,ITRON準拠OSからWindows Embedded CE(以下,CEと表記)へのシステム移行の手順を,3回に分けて説明します.まず1回目の今回は,CEの特徴,およびITRONとCEの違いについて説明します.

 

1.パソコン向けWindowsとは一線を画するCE

 「Windows」という名を冠しているせいか,まだまだCEに対して誤解している方が多いように思います.CEのカーネル(OSのコア部分)は,パソコン向けWindowsとは別に,一から設計し直されています.以下にCEの特徴を簡単に列挙します.
 

  • 32ビットCPU向けリアルタイムOS
  • x86だけでなく,ARM,MIPS,SH-4といった各種組み込み向けCPUにも対応
  • さまざまなデバイス,プロトコル,サービスに対応(約700個のコンポーネントが標準で付属)
  • 組み込むコンポーネントを選択することで,OSのフットプリントを軽減可能(最小300Kバイト程度)
     

 CEではバージョン6.0から,開発環境がVisual Studio 2005(以下,VS2005と表記)のアドインとして提供されるようになりました.ですから,OS構築からデバイス・ドライバやアプリケーション(ソフトウェア)の作成まで,すべてVS2005上で作業が可能となっています.また,ARM CPUの動作をパソコン上でエミュレートする「デバイス・エミュレータ」が付属しています.このほか,CPUの負荷率やメモリ使用量を計測するツールも付属しています.これにより,実機開発前後のOSやアプリケーションの検証を効率よく行えます.

 パソコン向けWindowsでは,OSはアプリケーションに対してWin32 APIというシステム・コールを提供しています.先ほど「CEはパソコン向けWindowsとは異なる」と言いましたが,CEではこのWin32 APIのサブセットを提供しています.そのため,パソコン向けWindowsでアプリケーションを開発していた技術者にとっては,比較的取り扱いやすいOSであると言えます.

 CEがよく使用されている分野として,ネットワークにつながる比較的高機能な端末があります.例えば,POSレジスタやKIOSK端末,セットトップ・ボックス,ネットワーク・プロジェクタ,ハンディ端末まどが挙げられます.

 CEのランタイム・ライセンスですが,Core SKUで3.00米ドル,Professional SKUで16.00米ドルとなっています.製品に搭載するコンポーネントによってライセンス料が変わりますが,Core SKUでもかなり多くのコンポーネントを含んでいます.ライセンス料を高く感じるかどうかは,開発するシステムによって変わってくると思います.ITRONではプロジェクト・ライセンス形式のOS提供をよく見かけます.多品種少量生産のシステム開発の場合には,CEに移行したほうが安価に済むケースもあると思います.

 なお,CEの各ライセンスに含まれるコンポーネントについては,Microsoft社の「Windows Embedded CE オペレーティング システム コンポーネント」のページを参照してください.

組み込みキャッチアップ

お知らせ 一覧を見る

電子書籍の最新刊! FPGAマガジン No.12『ARMコアFPGA×Linux初体験』好評発売中

FPGAマガジン No.11『性能UP! アルゴリズム×手仕上げHDL』好評発売中! PDF版もあります

PICK UP用語

EV(電気自動車)

関連記事

EnOcean

関連記事

Android

関連記事

ニュース 一覧を見る
Tech Villageブログ

渡辺のぼるのロボコン・プロモータ日記

2年ぶりのブログ更新w

2016年10月 9日

Hamana Project

Hamana-8最終打ち上げ報告(その2)

2012年6月26日