Microsoft Windows Embedded CE
テンプレート:Infobox OS Windows Embedded Compact (ウィンドウズ エンベデッド コンパクト)は、マイクロソフトが開発した組み込み機器向けの32ビットのマルチタスク/マルチスレッドリアルタイムオペレーティングシステム (RTOS)。一般にはHandheld PCやPocket PCなどのPDAで使われているオペレーティングシステム (OS) として知られている。1996年11月に発表されている。近年はPNDにも採用されている。バージョン 6.0 では Windows Embedded CE 、バージョン 5.0 までは、Windows CE と呼ばれていた。
目次
概要
Windows 9x系やWindows NT系等と共に、Windowsファミリーに属する。パーソナルコンピュータ (PC) 用Windowsと異なりOSのみで一般に販売されることはなく、対象となる装置に組み込んで使用することを前提としている。また、組み込み用OSとしてWindows Embeddedファミリーにも位置する。かつてのPC用のWindows NTのように、複数のCPUアーキテクチャに対応する。
組み込み用という性格上、機器を開発するメーカがその機器に不要な機能は削除し必要な機能のみを選んで搭載することも可能である。このため、利用者からは、Windows CEが搭載されていることを意識することなく使える機器を作ることもできる。業務用専用端末や、セットトップボックス等で用いる場合は、このようにして必要な機能を搭載する。また、実装した機能によって対価のロイヤリティが変動する。
必要な機能のみを選択して搭載することができるという特徴を生かして、Windows CEを搭載するPOSレジや、ビデオプロジェクタ、カーナビ (Windows CE for Automotive)、ゲーム機(ドリームキャスト)、ポータブルAVプレーヤー (Portable Media Center)、シンクライアント端末 (Windows-based Terminal、Smart Display) なども存在する。これらにはPDAに見られるようなOSとしてのGUIを実装していないものも多いが、レジでは最近タッチパネルを搭載してボタンと組み込みOSの操作で作業の効率化を図る傾向がある。
なお、これらの端末にもパーソナルコンピュータ (PC) 用Windowsと同様にWindowsのラインセンスシールが貼り付けられる。
名称
「CE」の名称は家電を意味するConsumer Electronicsの略と言われているが、マイクロソフトによると、「CEは何かしらの略語ではないが、"Compact," Connectable," Compatible," "Companion," and "Efficient."(小さく、つなぎやすく、互換性のある、つきあえる、効率的なもの)の意味合いがある」と説明している[1]。
バージョン
改良により、機能追加のほか、リアルタイムイベントでの応答速度の向上などが行われている。
- Windows CE 1.0 (Pegasus)
- Windows CE 2.0, 2.11, 2.12 (Mercury)
- Windows CE 3.0 (Cedar)
- Windows CE .NET 4.0 (Talisker)
- Windows CE .NET 4.1 (Jameson)
- Windows CE .NET 4.2 (McKendric)
- Windows CE 5.0 (Macallan)
- Windows Embedded CE 6.0 (Yamazaki)
- Windows Embedded Compact 7 (Chelan)
- Windows Embedded Compact 2013
CE 4.0 から CE 6.0 までのコードネームは有名なウィスキーの名前より取られている。
Windows Embedded CE 6.0
次世代バージョンとして、Version 6.0が開発された。5.0までは、プロセス数は最大32個に制限され、そして各プロセスの仮想アドレス空間は32MBに制限されていた。6.0ではプロセス数制限は最大32000個までに拡張され、各プロセスの仮想アドレス空間は2GBまでに広げられる。これにより大量のメモリを消費するアプリケーションが実現可能になる。 またカーネルは上位2GBのアドレス空間に置かれ、従来ユーザープロセスだったGWES、ファイルシステム、デバイスドライバはカーネル空間に統合される。これにより従来プロセス切り替えオーバーヘッドがAPI呼び出しに伴っていたが、これもシステムコールという形になり高速化される。特にネットワークへのアクセス速度は大幅に高速化されるとしている。
Windows Embedded Compact 7
CE 6.0 の発展バージョンとして開発されたWindows Embedded Compact 7 は 8物理コアまでのSMP、3GBまでの物理メモリ空間サポート、NDIS 6.1ベースのネットワークスタック、.NET Compact Framework v3.5 が特徴である。また Silverlight for Windows Embedded によるUI開発が可能になった[2][3]。
Windows Embedded Compact 2013
Compact 7の後継として、2013年6月に一般利用可能となった。 サポートするCPUの種類としてはx86およびARMv7T2が必要とされ、MIPS系、およびARMv5、ARMv6までのアーキテクチャはサポートされなくなった。 開発環境としてVisual Studio 2012 update2 以降を利用する。 Visual Studio 2012の組み込みRAD開発ツール、Blend for Visual Studio 2012の利用が推進された一方で、これまでのHPC Shell機能やコントロールパネルUIはサポートが削除された。.NET Compact Frameworkとしては v3.9がサポートされている。
アプリケーション開発環境
Windows Embedded CEのアプリケーション開発は、現在ではネイティブコード開発とマネージドコード開発の2とおり開発手法が用意されている。
ネイティブコード開発
CPUのネイティブコードでプログラムの実行ファイル(DLLまたはEXE)を作成する方法がネイティブコード開発である。ネイティブコード開発ではデスクトップPC用のWin32 APIのサブセットが利用可能である。またデータベースやリモートツール関連でCE独自のAPIも用意されている。文字列を使用するAPIはほとんどの場合UNICODEバージョンのみが用意され、ANSIバージョンも用意されているAPIはCランタイム系やWinsock関連など一部にとどまる。
Windows CEではこれまでに以下のCPUアーキテクチャがサポートされていたことがある。
- MIPS系CPU - MIPS32、MIPSII、MIPSIIFPなど
- ARM系CPU - ARMv4、ARMv4I、ARMv5、ARMv6、ARMv7
- SuperHシリーズCPU - SH3、SH3DSP、SH4
- PowerPC
- x86 - x86、x86EM
これ以外に、CEFと呼ばれる仮想マシンコードを利用した開発が一時サポートされていたが[4]、このコンセプトはCE 4.0以降のマネージドコード開発へと引き継がれていった。
ネイティブコード開発ツールとしては当初 Visual Studio 6.0にアドオンして使用する Windows CE Toolkit for Visual C++/Visual Basic 5.0や2003 が使用されたが、Windows CE 3.0以降では無償で入手できる eMbedded Visual Tools 3.0 / eMbedded Visual C++ 4.0 が利用されるようになった。CE 5.0以降では Visual Studio 2005 / Visual Studio 2008 でネイティブコード開発が行われるようになったが、これらの開発製品は有償で入手する必要がある。
マネージドコード開発
マイクロソフトの.NET Framework構想に準じたアプリケーション開発の手法をマネージドコード開発という。Windows CEのマネージドコード実行環境は.NET Compact Frameworkと呼ばれる。これはデスクトップPC向け.NET Frameworkのサブセットであり、一部共通のクラスライブラリが用意される[5]。開発言語としては C#および Visual Basic(.NET)がサポートされている。
- .NET Compact Framework v1.0
- .NET Compact Framework v2.0
- .NET Compact Framework v3.5
当初はマネージドコード開発のみのためにVisual Studio ( Visual C# / Visual Basic ) 2003 が利用された(ネイティブコード開発はできなかった)が、その後の Visual Studio 2005 および Visual Studio 2008 では一つの環境でネイティブコード開発とマネージドコード開発の両方が可能になった。
RAD開発
Windows Embedded CE 6.0 R3 や Windows Embedded Compact 7 ではアプリケーション開発手法として Silverlight for Windows Embedded が利用可能である。これはExpression Blendを利用して作成したデザインにC++で開発した処理コードを組み合わせるという、ハイブリッドな開発手法である。
デバッグ手法
作成したアプリケーションの動作確認は、PC上で実行するCEエミュレータ、またはシリアルケーブルやLAN経由でActiveSyncやWindows Mobile Device Centerにより接続したターゲット機にリモートで、それぞれダウンロードして行う。
Windows CE 2.x/3.0の時代には、Windows PC上のWin32 APIに変換する形で動作するWindows CEエミュレータが用意されていた。このAPIエミュレータを利用するには、デバッグ時に一時的にx86コードを生成する必要があった。
Windows CE 5.0/6.0 や Windows Mobile 5.0/6.xの世代では ARMコードで動作するエミュレータが用意され、ARM実機用と同じバイナリをエミュレータでそのまま動かすことができた。
プラットフォーム開発環境
Windows CE はその初期よりマイクロソフトの組み込み向けOS製品としての利用を計画されていた。やがて出荷された以下のツールキットを使用すると、ユーザーは独自のWindows CE OSを開発しカスタム機器向けの組み込みOSとして利用することができるようになった[6]。
- Windows CE 2.11 ETK (Embedded Tool Kit)
最初の組み込み向けCE開発環境、ベータ版として提供
- Windows CE 2.12 Platform Builder
最初の製品版組み込み向け CE開発環境、独自IDEでOSビルドが可能 (例)Pocket Post Pet
- Windows CE 3.0 Platform Builder
IDEで使用するコンポーネントを選択できるようになった(例)Windows Based Terminal、WebPad
- Windows CE 4.0 Platform Builder
大幅に機能向上。NDIS5.1ネットワーク、MUI機能、VoIP機能など(例)Set Top Box
- Windows CE 4.1 Platform Builder
- Windows CE 4.2 Platform Builder
(例)Portable Media Center
- Windows CE 5.0 Platform Builder
(例)Network Media Device [7]、Nav Readyなどの派生製品がある
- Windows Embedded CE 6.0
これまでの独自IDEからVisual Studio 2005のアドオンへと変更された
- Windows Embedded CE 6.0 R2
- Windows Embedded CE 6.0 R3
(例)ネットワークプロジェクタ、PND、カラオケ端末
- Windows Embedded Compact 7
Visual Studio 2008のアドオンとして提供 (例)タブレット
Export SDK機能
上記ツールキットを使用すると、OEMのニーズに応じたOS機能のみを搭載したカスタムWindows CE OSを作成することができるが、これらカスタム機器(通常よりも使用可能API少ない)で正常に動作するネイティブコードアプリケーション開発をサポートするために、ツールキットにはカスタム機器で使用可能なヘッダーファイルとライブラリのみをまとめて出力する、カスタムSDK作成機能が備わっている。この機能を用いて作成されたカスタムSDK は eMbedded Visual C++ やVisual Studio 2005/2008環境で使用することができる。
最近のPlatform Builder には再ビルド可能なCEカーネルほかいくつかの中心モジュールのソースコードが付属しており、ツールキットインストール時に簡単なEULAに同意することでOSのビルドツリー内にインストールされる。これを利用してカーネルの処理内容を理解したりデバッグ時にカーネルデバッガから参照したりすることができる。
ライセンス料
Windows CE Platform Builderを利用してカスタムWindows CE OSを開発しこれを機器に搭載して製品出荷する場合、組み込みOSとしての使用料をマイクロソフトに支払う必要がある。その際には代理店経由で契約を締結し、COAと呼ばれるシールを製品に貼付して出荷する。Windows CEの組み込みOSとしてのライセンス料は使用OSコンポーネントによりいくつかのカテゴリに分けられるが、およそ1台あたりUS $3 から US$16の範囲とされている[8]。
PDAでの利用
PDAと呼ばれる製品群にはWindows CEをOSとするものがあり、これらPDA用に必要なデバイスドライバやウェブブラウザなどの機能をマイクロソフトがまとめた製品が「Handheld PC」や「Pocket PC」である。「Handheld PC」や「Pocket PC」はOSを示すものではない。例えば、NECの「モバイルギア」の「MC-R530」という製品の場合は、Windows CE Ver.2.11を搭載した、Windows CE Handheld PC Edition Ver.3.01仕様の製品というようになる。
初期の頃、Windows CEの利用形態の一つとして、携帯用端末での使用が検討され、その結果x86ベースのノートパソコンよりも小型化されたキーボード付きの形状のものと、タッチパネルへのペン(スタイラス)による入力操作を基本とするキーボードを持たない小型のものが登場した。前者を「Handheld PC」(ハンドヘルド・ピーシー=H/PC)、後者を「Pocket PC」(ポケット・ピーシー)と呼ぶ。
どちらの場合も、Windows 95以降でウィンドウを「最大化表示」で使用した状態に似たユーザインタフェースとなっており、Windowsユーザであれば、あまり違和感なく操作することができるよう配慮されている。また、携帯用という点を重視し、小型軽量で電池(バッテリ)による長時間駆動が可能である。キーボード付きのものでもペン操作が出来るものが多い。多くはハードディスクを持たず、メモリカードスロットを実装する。
キーボード型やペン型PDAであっても、マイクロソフトが提供する上記のプラットフォームを使わず、Windows CEカーネル上に独自のユーザモード層を構築した製品もある。カシオのl'agenda(ラジェンダ)、NTTドコモのポケットポストペットやシグマリオンIII、日立のNPD-10JWL/20JWL、au(KDDI・沖縄セルラー電話)のトリコメール、サイバーバンクジャパンのPC-EPhoneIIなどがこれに当たる。 その理由として、GUIを独自実装することでロイヤリティを下げられることが挙げられる。また、キーボード型の製品ではH/PCの開発が既に終息していること、ペン型の製品ではARM以外のCPUのサポートを中止したことも挙げられる。これらの機種の一部では、足りないモジュールを独自に補完してPocket PC用などのアプリケーションを動作させる試みが、ユーザーの間で行われている。
キーボード型製品名称の推移
- Handheld PC 1.0
- 1997年6月25日発表。Windows CE 1.0ベース。
- Handheld PC 2.0
- 1998年3月11日発表。Windows CE 2.0ベース。
- Handheld PC 3.0 (Handheld PC Professional Edition)
- 1999年2月22日発表。Windows CE 2.11ベース。
- Handheld PC 2000
- 2000年10月10日発表。Windows CE 3.0ベース。
ペンオペレーション製品名称の遷移
- Palm PC
- 1998年に発表した際の名称。
- Palm-size PC 1.1
- 1998年12月3日発表。Palm OSと酷似するということで改称。白黒インタフェース。(読み:パームサイズPC)(略称:PsPC)
- Palm-size PC 1.2
- 1999年2月22日発表。カラー表示対応。
- Pocket PC (2000)
- 2000年7月13日発表。Windows CE 3.0ベースになったことを機に改称。ウェブブラウザ (Pocket Internet Explorer)、ファイルエクスプローラ搭載。左下にあった「スタート」ボタンが廃止され、左上のプルダウンボタンからタスクを開く形態となった。プラットフォーム準拠のアプリには終了ボタンが付かなくなった。略称:PPC。
- Pocket PC 2002
- 2001年10月5日発表。Windows XPに準じた インタフェースを採用し、若干高速化した。これ以降はARM系CPUのみをサポートするようになった。アプリに終了ボタンが付くようになったが、実際には終了せず、Windowsの最小化ボタンに近い。
- Pocket PC 2003
- 2003年6月30日発表。Windows Mobile 2003 software for Pocket PCが正式名称。Windows CE.NET 4.2ベース。
- Pocket PC 2003 Second Edition
- 2004年7月6日発表。Windows Mobile 2003 Second Edition software for Pocket PCが正式名称。VGA画面をサポート。
- Windows Mobile 5.0
- 2005年8月23日発表。インタフェースを若干変更。Officeアプリケーションの機能向上。Windows Media Player 10 Mobile搭載など。.NET Frameworkのサブセットである.NET Compact Frameworkの実行環境が搭載されている。
- Windows Mobile 6
- 2007年2月12日発表。インタフェースを刷新し、Vista風デザインとなる。Officeスイートを改良。HTMLメールをサポートしWindows Live Mailに対応。このバージョンからWindows Mobile StandardとWindows Mobile Professional、そして機能面ではWindows Mobile Professionalと同じだが、通信機能がオプション扱いの主にPDA向けのWindows Mobile Classicの三つのエディションに分けられる。バージョン番号はCE 5.2で、CE 6.0カーネルの搭載は見送られた。
Pocket PC2002以降はARM系CPUのみサポートされている。
PDAの発展と終息
H/PCについては、かつてはNECの「モバイルギア」、シャープの「テリオス」、日本ビクターの「インターリンク」、日立製作所の「ペルソナ」、ヒューレット・パッカードの「ジョルナダ」、NTTドコモが販売する「シグマリオン」などの機種があったが、いずれも生産を終了している。マイクロソフトもH/PC向けの製品をリリースしておらず、H/PC市場は事実上終息している。
Pocket PCについては、国内メーカではカシオ計算機の「カシオペア」や東芝の「GENIO e」、NECの「ポケットギア」、富士通の「Pocket LOOX」、NTTドコモが販売する「muséa」等がある。この他に、ヒューレット・パッカード(旧コンパック)の「iPAQ」やデルの「Axim」など海外メーカー製品もあり、かつては選択の幅も広かったが、現在では、各メーカとも法人用途向けに注力するようになったことや、通信販売でのみ販売する手法に切り替えたこともあり、店頭でこのタイプの端末を見ることも少なくなっている。
携帯電話の高機能化がPDA全体の販売数が減少した一因、という意見もある。 Windows CEも近年ではスマートフォン向けのWindows Mobile for Smartphone(日本未発売)やWindows Mobile for Pocket PC Phone Editionというバージョンを出し、携帯電話へのシフトを強めている。
PDAの現状
日本国内でのスマートフォンへの採用
- WILLCOM W-ZERO3シリーズ - 2005年12月に初代機WS003SH(W-ZERO3、シャープ製)が発売。OSにはWindows Mobile 5.0 for Pocket PCが使われている。
- NTT Docomo hTc Z HT1100 F1100
- SoftBank X01HT - スマートフォン、HSDPAの3G高速通信を初採用。
- イー・モバイル EMONSTER (S11HT)
関連項目
- Windows Mobile
- Pocket PC - 主流はWindows Mobile搭載のスマートフォンにタッチパネルを組み合わせたもの。
- Windows Automotive - パイオニアサイバーナビなどで採用されている。
- Microsoft Zune - OSとしてWindows CEベースのPortable Media Centerを採用している。
- ドリームキャスト - Windows CE搭載ゲームコンソール。
- タブレットPC
- iPhone、iPod touch - Pocket PC及びZuneの競合商品。Mac OS Xから派生したOSを搭載。
- BlackBerry - カナダ Research in Motion社のスマートフォン。マイクロソフトによる買収の噂もあった[9]。
- Android
- Palm - 上記Pocket PCの競合商品。Treoの一部機種ではWindows Mobileを搭載していた。現在では終息しつつあり、後継のWebOSを待つ段階である。
- Zaurus - Pocket PCのかつての競合製品。現在は終息。
- ITRON
- REX OS
- Brew MP
脚注
テンプレート:脚注ヘルプ- ↑ The Meaning of "CE" in Windows CE, マイクロソフト, 2002年9月3日
- ↑ マイクロソフト、Windows Embedded Compact 7のCTPを公開, PC Watch, 2010年6月4日
- ↑ Microsoft、Windows CE後継OS「Windows Compact 7」の提供開始, PC Watch, 2011年3月4日
- ↑ Windows CE FAN, MIPS用? SH用? ひとつの実行ファイルで大丈夫 期待の新技術 CEF とは?, Windows CE FAN, 1999年6月10日
- ↑ .NET Compact Frameworkで作成されたWinFormベースのアプリケーションは、再コンパイルせずにそのままデスクトップ上の.NET Frameworkで動く場合が多い
- ↑ History of Windows Embedded Compact 7, Microsoft
- ↑ マイクロソフト、「Windows CE」開発者向け機能パックの提供を開始, マイクロソフト, 2006 年 4月 5日
- ↑ Windows Embedded Compact 7 Product Information and Pricing, Microsoft
- ↑ マイクロソフト、「BlackBerry」のリサーチ・イン・モーションを買収か | COMPUTERWORLD.JP
外部リンク
テンプレート:Windows CE端末 テンプレート:Windows テンプレート:リアルタイムオペレーティングシステム