Windows Embedded Compact
开发者 | Microsoft |
---|---|
编程语言 | C |
作業系統家族 | Windows Embedded Compact |
運作狀態 | 已停止支援 (2021年結束) |
源码模式 | 封閉(共享內核源代碼[1]) |
当前版本 |
|
内核类别 | 混合核心 |
许可证 | 微軟EULA |
官方網站 | Windows CE |
Windows Embedded Compact(曾被稱為Microsoft Windows CE),為微軟研發的嵌入式作業系統,可以應用在各種嵌入式系統,或是硬體規格較低的電腦系統(例如很少的記憶體,較慢的中央處理器等)。微軟並未定義CE縮寫由來,一般解釋則有Compact Edition、Customer Embedded、Consumer Electronics等等。在2008年4月15日舉行的嵌入式系统大会上,微軟宣布將Windows CE更名為Windows Embedded Compact,與Windows Embedded Enterprise、Windows Embedded Standard和Windows Embedded POSReady組成Windows Embedded系列產品。[3]
概覽
[编辑]Windows CE 1.0最早於1996年推出,是单色的Windows 95简化版本。
1997年Fall Comdex大會上公佈的Windows CE 2.0仍是基於Win95的作業系統,效率遠高於1.0版。
Windows CE 3.0是微软的Windows Compact Edition,已擺脫舊有的Windows 95简化格式,是一套全新的作業系統,支持5種CPU:x86、PowerPC、ARM、MIPS、SH3/4。並且改名为Windows for Pocket PC,简称Pocket PC。
2002年1月微軟又推出Windows CE.Net,即Windows CE 4.0。
2004年5月份推出Windows CE 5.0,开放有250萬行原始碼。
2006年11月,微软推出Windows Embedded CE 6.0。
2010年10月,微软推出 Windows Phone 7,Windows Embedded Compact 7。
Windows CE可以使用在各式各樣的系統上,最有名的是Pocket PC以及微軟的SmartPhone。其他較不為人知的裝置包括微軟的车载电脑、机顶盒、生產線上的控制設備、公共場所的資訊站(Kiosk)、電子辭典及导航仪等等,有些裝置甚至沒有任何人機介面。
Windows CE並非從桌上型電腦的Windows(NT,98,XP……)修改縮小而來,而是使用一套完全重新設計的核心,所以它可以在功能非常有限的硬體上執行。雖然核心不同,但是它卻提供了高度的Win32 API軟體開發介面的相容性,功能有内存管理、文件操作、多线程、网络功能等。因此,開發桌上型電腦軟體的人可以很容易編寫甚或直接移植軟體到Windows CE上。
一個與其他微軟作業系統的差異是Windows CE提供原始碼,首先已經提供了原始碼給部分廠商,讓廠商能夠依照他們自己的硬體架構修改原始碼, 例如在Windows CE的開發IDE軟體Platform Builder中就提供了許多開放原碼的常用軟體元件,但是一些與硬體架構的軟體元件仍然以二進制檔案形式來提供。
版本
[编辑]版本 | 改動 |
---|---|
1.0 | 發佈於1996年11月[MSCE1]。[4]代號Pegasus。[5]
|
2.0 | 發佈於1997年9月[MSCE2]。[4]代號Mercury/Gryphon/Apollo/Alder/Alder EP/Birch/Birch SP2/Jupiter/Wyvern/Goldeneye。[5] |
3.0 | 發佈於2000年六月[MSCE3]。[4]代號Cedar。[5] |
4.x | 發佈於2002年1月。[MSCE4]。[4]代號Talisker/Jameson/McKendric。[5] |
5.0 | 發佈于2004年8月。[5]新增了許多功能。[6]代號"Macallan".[5] |
6.x | 發佈於2006年9月。代號"Yamazaki".[5] |
7.x | 7.0 發佈於2010年10月。7.5 發佈於2011年9月 |
CE v3.0是Pocket PC 2002的基礎. CE v3.0的下代為CE.net. [4] "PocketPC [是]核心Windows CE OS上的一整層程式... Pocket PC以Windows CE為基礎,但分發的方式不太一樣.". Pocket PC的使用證書禁止修改WinCE的程式.[12]
功能
[编辑]停产前最新的Windows CE為Windows CE 7.0,這個版本在核心部分支援:
- 雙核心處理器支援(SMP、ARMv6)
- WIFI定位系统
- 藍牙3.0 + HS
- Cellcore
- DLNA(數位生活網路聯盟)
- 數位版權管理(DRM)
- 媒體傳輸協議(MTP)
- IE8 Rendering Rich Media Plug-Ins
- NDIS 6.1支援
- UX C++ XAML API如使如Windows Presentation Foundation和Silverlight的用戶界面
- 更佳觸摸和手勢輸入
在開發環境上,微軟也提供相容於.NET Framework的開發元件:.NET Compact Framework,讓正在學習.NET或已擁有.NET程式開發技術的開發人員能迅速而順利的在搭載Windows CE .NET系統的裝置上開發應用程式。
用于掌上电脑Pocket PC以及智能手机Smart Phone上的Windows CE系统称为Windows Mobile,目前成熟的最新版本为Windows 10 Mobile。
在2009年10月6日,Windows Mobile亦正式改名為Windows Phone.
開發工具
[编辑]Windows CE可支援MFC,ATL,STL,COM,ActiveX,以及.NET Compact Framework。開發工作可以分為:
- Platform Builder:這個工具是一個編譯平台(BSP + 作業系統核心)、驅動程式以及應用程式,是一個可以做單部執行的開發環境,也可以用來傳送SDK到目標平台再搭配另外一個下面的工具來使用。
- Free Pascal and Lazarus:版本2.2.0以后的Free Pascal都有Windows CE支持(包括ARM和x86)。随后,Windows CE头文件也被翻译,供Lazarus(一个基于Free Pascal的快速应用开发(RAD)软件包)使用。用户可以使用Lazarus IDE来设计Windows CE应用程序,并通过交叉编译器(cross-compiler)生成用于Windows CE的可执行文件。
- Embedded Visual C++(eVC)這是一個用於開發基於Windows CE作業系統嵌入式應用程式的工具,這個工具可以使用由Platform Builder輸出的SDK。
- Visual C++ 2005/2008/2010其中Platform Builder 6.0 for Windows Embedded CE被改寫成Visual Studio 2005的一個插件。
限制
[编辑]- Windows CE為UNICODE作業系統,但char不必改為TCHAR,WCHAR,因為Windows CE也支援非Unicode編程。
- Windows CE不支援重叠I/O。
- WinCE的許多APIs功能都受限,如CreateThread函数在许多参数在Windows CE下都不支持,第1、2、5的參數值必須设为NULL或0。
HThread = CreateThread(NULL, 0, Thread, nParameter, 0, &dwThreadID);
參見
[编辑]參考文獻
[编辑]- ^ Microsoft opens full Windows CE kernel source. Linux Devices' article(Nov. 01, 2006).
- ^ https://web.archive.org/web/20130616045552/http://www.microsoft.com/en-us/news/Features/2013/Jun13/06-13EmbeddedCompactGA.aspx.
- ^ Microsoft Charts Its Road Map for Windows Embedded Business. [2009-04-22]. (原始内容存档于2008-04-20).
- ^ 4.00 4.01 4.02 4.03 4.04 4.05 4.06 4.07 4.08 4.09 4.10 4.11 4.12 4.13 Risk Analysis of Mobile Devices with Special Concern of Malware Contamination (PDF). [2009-09-02]. (原始内容 (PDF)存档于2022-02-27). 090517 2000grad.com
- ^ 5.0 5.1 5.2 5.3 5.4 5.5 5.6 Windows Embedded Blog : CE 6.0 - why the codename "Yamazaki" ?. [2009-09-02]. (原始内容存档于2009-06-09). 090517 blogs.msdn.com
- ^ 6.0 6.1 6.2 Talk:Microsoft Windows CE#Is Windows CE a trimmed down version of desktop Windows ??? 090517
- ^ Pen Computing Magazine: Windows CE .net. [2009-09-02]. (原始内容存档于2022-04-17). 090517 pencomputing.com
- ^ 8.0 8.1 8.2 MS readies WinCE 5.0 preview. [2009-09-02]. (原始内容存档于2019-04-14). 090517 theregister.co.uk
- ^ The History of the PDA.[永久失效連結] 090517 seditaville.com
- ^ Introduction to Microsoft embedded technologies - Session 1. [2009-09-02]. (原始内容存档于2011-07-24). 090517 embedded.net.nz
- ^ Differences between Windows CE 5.0 and Windows CE 6.0. [2009-09-02]. (原始内容存档于2012-12-09). 090517 windowsfordevices.com
- ^ Why Pocket PC isn't WinCE. [2009-09-02]. (原始内容存档于2018-09-19). 090517 theregister.co.uk