| 開発者 | マイクロソフト |
|---|---|
| 書かれた | C [1] |
| ソースモデル | |
| 初回リリース | 1996年11月16日 |
| 最終リリース | 8.0 (Embedded Compact 2013) / 2023年10月10日[3] [4] |
| プラットフォーム | x86、32ビット ARM 、(SuperH [5] 6.0 R2まではMIPSとPowerPCもサポートされていた)[6] [7] [ 8] [9] [10] [11] |
| カーネルタイプ | ハイブリッド モノリシック |
| ライセンス | 商用の プロプライエタリソフトウェア |
| 後継者 | Windows IoT |
| 公式サイト | msdn.microsoft.com/埋め込み |
| サポート状況 | |
| サポートされていません。詳細については、§ リリースを参照してください。 | |
Windows Embedded Compact [12](旧称:Windows Embedded CE、Windows Powered、Windows CE)は、Microsoftがモバイルおよび組み込みデバイス向けに開発した、現在は販売中止となっているオペレーティングシステムです。Windows Embeddedファミリーの一部であり、ハンドヘルドPC、ポケットPC、オートPC、Windows Mobile、Windows Phone 7など、 いくつかのクラスのデバイスの基盤として機能しました。
Windows NTをベースにしたWindows Embedded Standard、Windows For Embedded Systems、Windows Embedded Industry、Windows IoTとは異なり、Windows Embedded Compact は異なるハイブリッド カーネルを使用します。[13] Microsoft はこれをOEMにライセンス供与し、OEM は独自のユーザー インターフェイスとエクスペリエンスを変更および作成でき、Windows Embedded Compact はそのための技術基盤を提供します。Windows Embedded Compact の最終バージョンは、ボード サポート パッケージ (BSP) によって x86 および ARM プロセッサを直接サポートします。[14] MIPSおよびSHxアーキテクチャはバージョン7.0より前もサポートされていましたが、バージョン 7.0 はMIPS IIアーキテクチャでも引き続き動作します。
Windows Embedded Compact 2013はWindows CEの最終バージョンです。メインストリームサポートは2018年10月9日まで、延長サポートは2023年10月10日に終了しましたが、OEM向けのライセンス販売は2028年まで継続されます。[15] [4] [16] [17]
特徴
_cmd.exe_Command_Prompt_800x574.png/500px-Microsoft_Windows_CE_Version_3.0_(Build_126)_cmd.exe_Command_Prompt_800x574.png)
Windows CE は、最小限のメモリを搭載したデバイス向けに最適化されています。Windows CE カーネルは、1メガバイトのメモリで実行できます。[18]デバイスは、多くの場合、ディスク ストレージなしで構成され、エンド ユーザーの拡張を許可しない「クローズド」システムとして構成されることがあります (たとえば、ROMに書き込むことができます)。Windows CE は、決定論的な割り込み遅延を備えたリアルタイム オペレーティング システムの定義に準拠しています。バージョン 3 以降では、システムは 256 の優先度レベルをサポートし[19]、優先度の逆転に対処するために優先度の継承を使用します。実行の基本単位はスレッドです。これにより、インターフェイスが簡素化され、実行時間が向上します。
開発中はコード名「ペガサス」と呼ばれていた最初のバージョンは、WindowsのようなGUIとMicrosoftの人気アプリを多数搭載していたが、当時のパームトップのストレージ、メモリ、速度に合わせてすべて簡素化されていた。それ以来、Windows CEはコンポーネントベースの組み込みリアルタイムオペレーティングシステムに進化した。もはやハンドヘルドコンピュータだけをターゲットにしているわけではない。[20]多くのプラットフォームがコアWindows CEオペレーティングシステムをベースにしており、MicrosoftのAutoPC、Pocket PC 2000、Pocket PC 2002、Windows Mobile 2003、Windows Mobile 2003 SE、Windows Mobile 5、Windows Mobile 6、Smartphone 2002、Smartphone 2003、Portable Media Center、Zune、Windows Phone 7 、および多くの産業用デバイスや組み込みシステムが含まれる。Windows CEは、セガ ドリームキャストの厳選されたゲームにも搭載され、Gizmondoハンドヘルド のオペレーティングシステムでもあった。
Windows CE が他の Microsoft オペレーティング システムと比べて際立っている点は、その大部分がソース コード形式で提供されていることです。まず、ソース コードは複数のベンダーに提供され、ベンダーはそれを自社のハードウェアに合わせて調整することができました。次に、Platform Builder (Windows CE OS イメージの作成と統合、または CE に基づくカスタマイズされたオペレーティング システムの設計のための統合環境) などの製品によって、いくつかのコンポーネントがソース コード形式で一般に提供されました。ただし、特定のハードウェア環境 (CPU ファミリ以外) に合わせて調整する必要のないコア コンポーネントの多くは、依然としてバイナリ形式のみで配布されています。
Windows CE 2.11は、コンソールとWindows CEバージョンのcmd.exeをサポートした最初の組み込みWindowsリリースでした。[21]
歴史
Windows Embedded Compactは、以前はWindows CEと呼ばれていました。マイクロソフトによると、「CE」は何かの明確な頭字語ではありませんが、Windows開発者が念頭に置いていた「コンパクト」、「接続可能」、「互換性」、「コンパニオン」、「効率的」などのいくつかの概念を暗示しています。[22] [23]この名前は、2006年にWindows Embedded CE 6.0のリリースで一度変更され、2011年にWindows Embedded Compact 7のリリースで再度変更されました。
Windows CE は、1996 年のコンピュータ ディーラー展示会 (COMDEX)で Microsoft によって最初に発表され、 Bill Gatesと John McGillによってステージ上でデモされました。Microsoft は 1995 年初頭に Pegasus をテストし、厳密なリファレンス プラットフォームを複数のハードウェア パートナーにリリースしました。デバイスには、次の最小ハードウェア仕様が必要でした。
- SH3、MIPS 3000 または MIPS 4000 CPU
- 最低4MBのROM
- CR2032 コイン型電池などのバックアップ電源を備えた最低 2 MB の RAM
- 単三電池2本で駆動
- Ctrl、Alt、Shiftキーを含む物理的なQWERTYキーボード
- 480×240ピクセルのLCD、4階調グレー、ピクセルあたり2ビット、スタイラスまたは指で操作できるタッチスクリーン
- 赤外線トランシーバー
- シリアルポート
- PCカードソケット
- 内蔵スピーカー
当時のデバイスは主に 480×240 ピクセルのディスプレイを備えていましたが、Hewlett-Packardの「Palmtop PC」は例外で、640×240 ディスプレイを備えていました。各ウィンドウはディスプレイ全体を占有しました。ナビゲーションは、項目をタップまたはダブルタップして行いました。コンテキスト メニューは、ユーザーが ALT キーを押しながら画面をタップすることでも使用できます。Windows CE 1.0 にはカスケード スタート メニューが含まれていませんでしたが、Windows 95 と Windows NT 4.0 には含まれていました。Microsoft は、システム トレイに表示されるカスケード メニュー アイコンを含む Windows CE 1.0 Power Toys をリリースしました。また、他のユーティリティもいくつかバンドルされていましたが、最も注目すべきは、ユーザーがデバイスのミュートやミュート解除をすばやく行ったり、音量を調整したりできるシステム トレイのサウンド アプレットと、ペイントの「ポケット」バージョンでした。
Windows CE 2.0 のリリースは好評を博しました。Microsoft は Windows CE 1.0 の消費者からのフィードバックから教訓を得て、オペレーティング システムに多くの改良を加えました。スタート メニューはWindows 95やWindows NT 4.0のものと同じカスケード メニューでした。カラー画面もサポートされ、メーカーは最初のカラーH/PC のリリースを競いました。最初に市場に投入されたのは Hewlett Packard のHP 620LXでした。Windows CE 2.0 は、より幅広い CPU アーキテクチャもサポートしました。CAB ファイルをダブルクリックすることで、プログラムを OS に直接インストールすることもできます。オペレーティング システムを含む ROM の性質上、ユーザーはデバイスに新しいオペレーティング システムをフラッシュすることはできませんでした。代わりにメーカーはアップグレード ROM をリリースし、ユーザーは以前のバージョンを削除した後、これをデバイスに物理的にインストールする必要がありました。これにより通常、デバイス上のデータが消去され、最初の起動時にセットアップ ウィザードが表示されます。
1999年11月、マイクロソフトがWindows CEをWindows Poweredに改名する計画があると報じられた。[24]この名前は、Handheld PC 2000と、ネットワーク接続ストレージデバイス用のWindows 2000 Advanced Serverのビルド(Windows CEとは無関係)のブランド名にのみ登場した。CES 2001で発表されたさまざまなWindows CE 3.0製品は、「Windows Powered」という包括的な名前で販売された。[25]
開発ツール
ビジュアルスタジオ
Microsoft Visual Studio 2012、2013、2015は、Windows Embedded Compact 2013用のアプリとPlatform Builderの開発をサポートしています。[26]
Microsoft Visual Studio 2008 およびそれ以前のバージョンでは、Windows CE/Windows Mobile の旧リリースのプロジェクトがサポートされており、エミュレーターとして、またはケーブルで実際のモバイル デバイスに接続して、実行可能プログラムとプラットフォーム イメージが生成されます。CE プログラムの開発には、モバイル デバイスは必要ありません。.NET Compact Framework は、 C#およびVisual Basic (.NET)のプロジェクトで.NET Frameworkのサブセットをサポートしていますが、Managed C++はサポートしていません。.NET Compact Framework を採用した "マネージド" アプリでは、メモリが大幅に大きいデバイス (8 MB以上) も必要ですが、アンマネージド アプリは、より小さなデバイスでも正常に実行できます。Visual Studio 2010 では、Windows Phone 開発ツールが拡張機能として使用され、Visual Studio 内で Windows Phone 7 アプリを設計およびテストできます。
フリーパスカルとラザロ
Free Pascal はバージョン 2.2.0 で Windows CE ポートを導入し、ARM および x86 アーキテクチャを対象としました。その後、Windows CE ヘッダー ファイルは、Free Pascal に基づくラピッド アプリケーション開発 (RAD) ソフトウェア パッケージである Lazarus で使用できるように変換されました。Windows CEアプリは、Lazarus統合開発環境(IDE) で設計およびコーディングされ、適切なクロス コンパイラでコンパイルされます。[27]
プラットフォームビルダー
このプログラミング ツールは、プラットフォーム ( BSP +カーネル)、デバイス ドライバー(共有ソースまたはカスタム メイド)、およびアプリの構築に使用されます。これは、システムを起動して実行するためのワンストップ環境です。また、Platform Builder を使用して、ターゲットマイクロプロセッサ( SuperH 、x86、MIPS、ARM など) 用のソフトウェア開発キット(SDK) をエクスポートし、以下に示す別の関連ツール セットで使用することもできます。
その他
Embedded Microsoft Visual C++ (eVC) – Windows CE 用の組み込みアプリを開発するためのツール。Platform Builder からエクスポートされた SDKを 使用するか、Platform Builder の Platform Manager 接続設定を使用してスタンドアロンで使用できます。
CeGccプロジェクトは、 Windows CEをターゲットとするGNU C、GNU C++、 binutilsなどのGNU開発ツールを提供しています。 [28] 2つのSDKから選択できます。1つはMinGWに基づく標準のWindows CEプラットフォームSDK 、もう1つはPOSIXシステムからのプログラムの移植が容易なnewlibベースのSDKです。 [29]
CodeGear Delphi Prism – Visual Studio で実行され、.NET Compact Framework もサポートしているため、モバイル アプリの開発に使用できます。RemObjects Softwareが作成した、.NET、.NET Compact Framework、MonoをターゲットとするOxygeneコンパイラを採用しています。コマンドライン コンパイラは無料で利用できます。
Basic4ppc – Embedded Visual Basicに似たプログラミング言語で、.NET Compact Framework を対象とし、Windows CE および Windows Mobile デバイスをサポートします。
GLBasic – Windows CE や Windows Mobile を含む多くのプラットフォームにコンパイルできる、習得と使用が非常に簡単な BASIC 方言です。インライン C/C++ コードを記述することで拡張できます。
LabVIEW – Windows CE を含む多くのプラットフォームをサポートするグラフィカル プログラミング言語。
MortScript – GPS 愛好家に人気の、準標準的で非常に軽量な自動化 SDK です。独自の言語で記述されたスクリプトを使用しますが、構文はVBScriptやJScriptとは異なります。
AutoHotkey – Windows CEで利用可能なオープンソースのマクロ作成および自動化ソフトウェアユーティリティの移植版。システムアナリストのJonathan Maxian Timkangが開発したマクロやシンプルなGUIアプリの構築を可能にします。 [30]
Windows Mobile、Pocket PC、スマートフォンとの関係
Windows CE、Windows Mobile、Pocket PC は、起源が共通していることもあって、しばしば互換的に使用されます。しかし、この慣習は完全に正確というわけではありません。Windows CE は、モジュール式/コンポーネント化されたオペレーティング システムであり、いくつかのクラスのデバイスの基盤として機能します。これらのモジュールには、他のコンポーネントの機能のサブセット (さまざまなレベルのウィンドウ サポート、DCOMとCOMなど) を提供するものもあれば、独立したもの (ビットマップまたはTrueTypeフォントのサポート) や、別のコンポーネントに追加機能を追加するものもあります。これらのすべてのコンポーネントと、カスタム プラットフォームを開発するためのツールが含まれたキット (Platform Builder) を購入できます。Excel Mobile (旧称 Pocket Excel) などのアプリは、このキットには含まれていません。ただし、古い Handheld PC バージョンの Pocket Word や、その他の古いアプリはサンプルとして含まれています。
Windows Mobile は、Windows CE を基盤とするプラットフォームのサブセットとして最もよく説明されます。現在、Pocket PC (現在は Windows Mobile Classic と呼ばれています)、Smartphone (Windows Mobile Standard)、および Pocket PC Phone Edition (Windows Mobile Professional) が、Windows Mobile 傘下の 3 つの主要プラットフォームです。各プラットフォームは、Windows CE の異なるコンポーネントに加えて、それぞれのデバイスに適した補足機能とアプリを使用します。
Pocket PC と Windows Mobile は、一般的な PDA 用途向けに Microsoft が定義したカスタム プラットフォームであり、サポートされているソフトウェアとハードウェアの Microsoft 定義の最小プロファイル セット (Professional Edition、Premium Edition) で構成されています。Pocket PC デバイスの製造に関する規則は、Windows CE ベースのカスタム プラットフォームの製造に関する規則よりも厳格です。Pocket PC の特徴は、主要なヒューマン インターフェイス デバイスとしてのタッチスクリーンと、非常に持ち運びやすいサイズです。
CE 3.0 は Pocket PC 2000 と Pocket PC 2002 のベースです。CE 3.0 の後継は CE.net です。[31]「PocketPC は、コア Windows CE OS の上にある別のコード レイヤーです。Pocket PC は Windows CE をベースにしていますが、異なる製品です。」また、Pocket PC のライセンシーは WinCE 部分を変更することが禁止されています。[32]
Smartphoneプラットフォームは、携帯電話端末用の機能豊富な OS およびインターフェイスです。SmartPhone は、ビジネス ユーザー向けに電子メールなどの生産性向上機能を提供し、消費者向けにはマルチメディア機能を提供します。SmartPhone インターフェイスは、ジョイスティック ナビゲーションと PhonePad 入力に大きく依存しています。SmartPhone を実行するデバイスには、タッチスクリーン インターフェイスは搭載されていません。SmartPhone デバイスは、一般的に他の携帯電話端末のフォーム ファクタに似ていますが、ほとんどの Phone Edition デバイスは、より大きなディスプレイを備えた PDA フォーム ファクタを使用しています。
リリース
参照
参考文献
- ^ 「特別レポート: Windows CE 6 が 100% カーネル ソースで登場」。windowsfordevices.com。2006 年 11 月 1 日。2012 年 8 月 20 日時点のオリジナルよりアーカイブ。2011年7 月 20 日閲覧。
- ^ 「Microsoft が Windows CE カーネル ソースを完全公開」Linux Devices 2006 年 11 月 1 日。2009 年 2 月 16 日時点のオリジナルよりアーカイブ。
- ^ 「Microsoft、Windows Embedded Compact 2013 の一般提供を発表」。Microsoftニュース センター。Microsoft。2013年7 月 14 日閲覧。
- ^ ab 「Windows CE 移行 FAQ」。Microsoft。2021 年 9 月 15 日。2021 年 10 月 22 日時点のオリジナルよりアーカイブ。
- ^ 「Windows CE の概要」。2010 年 5 月 28 日時点のオリジナルよりアーカイブ。
- ^ 「Windows Embedded CE」。Microsoft。Microsoft。2015年7月17日時点のオリジナルよりアーカイブ。2015年2月6日閲覧。
- ^ 「 Windows CE バージョン 2.0でサポートされているプロセッサ」。Microsoft。Microsoft。2000年 9 月 14 日時点のオリジナルよりアーカイブ。
- ^ 「 Windows CE バージョン 2.1でサポートされているプロセッサ」。Microsoft。Microsoft。2000年 9 月 14 日時点のオリジナルよりアーカイブ。
- ^ 「 Windows CE バージョン 2.11 でサポートされているプロセッサ」。Microsoft。Microsoft。2000年 9 月 14 日時点のオリジナルよりアーカイブ。
- ^ 「 Windows CE バージョン 2.12でサポートされているプロセッサ」。Microsoft。Microsoft。2000年 9 月 14 日時点のオリジナルよりアーカイブ。
- ^ 「 Windows CE バージョン 3.0でサポートされているプロセッサ」。Microsoft。Microsoft。2000年 6 月 19 日時点のオリジナルよりアーカイブ。
- ^ 「Windows Embedded ホームページ」。Microsoft.com。2010年11 月 14 日閲覧。
- ^ 「Windows Embedded CE 6.0 はどのように起動しますか?」。Windows CE Base Team Blog。Microsoft。2007年12 月 18 日。2010 年 7 月 8 日時点のオリジナルよりアーカイブ。2010年11 月 14日閲覧。
- ^ 「ボード サポート パッケージ (Compact 2013)」。MSDN。Microsoft。2013年7月 15 日閲覧。
- ^ 「Windows Embedded 製品の製品ライフサイクルとサポート」。Microsoft。2015 年 4 月 10 日時点のオリジナルよりアーカイブ。
- ^ ケビン・パーディ(2023年10月30日)。「マイクロソフトの成長が止まった中間子、Windows CEが26年でサポート終了」Ars Technica 。 2024年1月10日閲覧。
- ^ Proven, Liam (2023年10月30日). 「Windows CEは販売終了ではないにしても、寿命を迎えます」. The Register . 2024年1月10日閲覧。
- ^ 「BSP を作成または変更する (Compact 2013)」。Microsoft Developer Network。Microsoft。2014年6月 11 日閲覧。
- ^ 「優先度レベル」。Msdn.microsoft.com。2010 年 4 月 8 日。2010年11 月 14 日に閲覧。
- ^ 「組み込みプラットフォーム | 統合開発環境 (IDE) | Windows CE」。Microsoft.com。2010年11 月 14 日閲覧。
- ^ Douglas McConnaughey Boling (2001)。プログラミング Microsoft Windows CE (第 2 版) 。Microsoft Press。ISBN 978-0735614437。
- ^ 「Windows CE の発売日における「CE」の意味」。support.microsoft.com。2015 年 2 月 14 日。2013 年 9 月 10 日時点のオリジナルよりアーカイブ。2015 年2 月 14 日閲覧。
- ^ 「Microsoft が Windows CE の名前を変更し、CE 6.0 の発売日を設定」。windowsfordevices.com。2006 年 9 月 22 日。2009 年 1 月 4 日時点のオリジナルよりアーカイブ。2011年7 月 20 日閲覧。
- ^ 「CNET: Windows CE が「Windows 搭載」に」1999 年 12 月。
- ^ 「IT Pro」。2005年4月19日時点のオリジナルよりアーカイブ。
- ^ 「新機能 (Compact 2013)」。MSDN。Microsoft。2016年1月 24日閲覧。
- ^ WinCE ポート 2009 年 1 月 26 日アーカイブ、Wayback Machine - Lazarus wiki
- ^ 「CeGCC プロジェクト: Windows CE のクロスコンパイル」 。2021年6 月 12 日閲覧。
- ^ 「開発環境の選択」CeGcc . 2021年6月12日閲覧。
- ^ CEデバイス用のAutohotkeyビルド
- ^ abcdefghij Pöhls, Henrich C. (2003 年 9 月 5 日)、「マルウェア汚染を特に懸念したモバイル デバイスのリスク分析」(PDF)、卒業論文、ハンブルク大学、p. 27、2009年10 月 24 日取得
- ^ Smith, Tony (2003 年 4 月 16 日)。「なぜ Pocket PC は WinCE ではないのか」The Register。2009年10 月 24 日閲覧。
- ^ 「Microsoft、Windows CE 搭載のハンドヘルド PC の幅広い提供を発表」。Microsoft News Center。1996 年 11 月 18 日。2011年6 月 20 日閲覧。
- ^ abcdefg Hall, Mike (2006 年 9 月 19 日)。「Windows Embedded ブログ: CE 6.0 - なぜコード名が「Yamazaki」なのか?」。MSDNブログ。2009 年10 月 24 日閲覧。
- ^ 「Microsoft、Windows CE 2.0のリリースを発表」。Microsoft News Center。1997年9月29日。 2015年7月27日閲覧。
- ^ 「Microsoft、Windows CE 3.0 の提供開始を発表」。Microsoft News Center。2000 年 6 月 15 日。2011 年6 月 20 日閲覧。
- ^ 「Microsoft、Windows CE .NET を発表」。Microsoft News Center。2002 年 1 月 7 日。2011年6 月 20 日閲覧。
- ^ Walker, Geoff (2002 年 1 月 7 日)。「Windows CE .Net: Microsoft の Windows CE 3.0 の後継」。Pen Computing Magazine。2009年10 月 24 日閲覧。
- ^ abc Smith, Tony (2004 年 3 月 29 日)。「MS が WinCE 5.0 プレビューを準備」。The Register。2009年10 月 24 日閲覧。
- ^ 「PDAの歴史」。2012年3月22日時点のオリジナル(DOC)からアーカイブ。2009年5月17日閲覧。090517 セディタビル
- ^ 「Windows Embedded CE 6.0 高度なメモリ管理」。2013 年 10 月 10 日。2011年5月25日閲覧
- ^ https://courses.washington.edu/cp105/_downloads/Windows_CE_Architecture.pdf; https://download.microsoft.com/documents/australia/medc2006/windows_ce6_architecture_boling.ppt と同一
- ^ Leckie, Andrew (2008 年 3 月 25 日)。「Microsoft 組み込みテクノロジの概要 - セッション 1」。ニュージーランド: Embedded .NET ユーザー グループ。2011年 7 月 24 日時点のオリジナル( PPT、10 MB)からアーカイブ。
- ^ Babu, K. Ashok (2006 年 11 月 22 日)。「Windows CE 5.0 と Windows CE 6.0 の相違点」。WindowsForDevices.com。2012年 7 月 16 日時点のオリジナルよりアーカイブ。2009 年10 月 24 日閲覧。
- ^ abcdef 「新機能 (Compact 2013)」。MSDN。Microsoft。2013年7月 15 日閲覧。
外部リンク
- Microsoft Windows CE におけるリアルタイム決定論のベンチマーク
- HPC:Factor による Windows CE の簡単な歴史とさまざまなバージョンのスクリーンショット
- 「Windows CE でホストされているサイト」。2005 年 3 月 11 日時点のオリジナルからアーカイブ。2006年7 月 23 日閲覧。、Handheld PC がホストする Web サイトのアーカイブ コピー
- MSDN の Windows XP Embedded
- Mike Hall の Windows Embedded ブログ
