真诚为您服务,快速高效解决WinCE嵌入式项目。
给我发消息 QQ在线咨询
MSN在线咨询
QQ邮箱
hotmail邮箱
I36I3034I44
真诚为您服务,快速高效解决WinCE嵌入式项目。

Windows Embedded Compact

Windows Embedded Compact

维基百科,自由的百科全书

(重定向自Windows CE
跳转到: 导航, 搜索

跳过字词转换说明

Windows CE
Windows CE徽标
开发公司/
开发者
Microsoft
操作系统家族 Windows CE
运作状态 支持中
源码模式 封闭 (共享内核源代码[1])
最新稳定版本 6.0 R3 / 2009年9月29日
内核 Hybrid内核
授权条款 微软EULA
网站 Windows CE

Windows CE微软研发的嵌入式操作系统,可以应用在各种嵌入式系统,或是硬件规格较低的电脑系统(例如很少的存储器,较慢的中央处理器等)。微软并未定义CE缩写由来,一般解释则有Compact EditionCustomer EmbeddedConsumer Electronics等等。在2008年4月15日举行的嵌入式系统大会上,微软宣布将Windows Embedded CE系列更名为Windows Embedded Compact,与Windows Embedded EnterpriseWindows Embedded StandardWindows Embedded POSReady组成Windows Embedded系列产品。[2]

目录

[隐藏]

[编辑] 概览

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。

Windows CE可以使用在各式各样的系统上,最有名的是Pocket PC以及微软的SmartPhone。其他较不为人知的设备包括微软的车用电脑机上盒、生产在线的控制设备、公共场所的信息站Kiosk)、电子辞典导航机等等,有些设备甚至没有任何人机界面。

Windows CE 并非从台式机的Windows(NT,98,XP...)修改缩小而来,而是使用一套完全重新设计的内核,所以它可以在功能非常有限的硬件上运行。虽然内核不同,但是它却提供了高度的Win32 API软件开发接口的兼容性,功能有内存管理、文档操作、多线程、网络功能等。因此,开发台式机软件的人可以很容易编写甚或直接移植软件到Windows CE上。

一个与其他微软操作系统的差异是 Windows CE 提供源代码,首先已经提供了源代码给部分厂商,让厂商能够依照他们自己的硬件架构修改源代码, 例如在 Windows CE 的开发 IDE 软件 Platform Builder 中就提供了许多开放原码的常用软件组件,但是一些与硬件架构的软件组件仍然以二进制文件形式来提供。

[编辑] 版本

Timeline of Windows CE Development

版本 改动
1.0 发布于1996年11月 [MSCE1]。[3] 代号Pegasus。[4]
  • 使用该OS的设备被命名为“handheld PC”〈HPC〉。[3]
2.0 发布于1997年9月 [MSCE2]。[3] 代号Mercury/Gryphon/Apollo/Alder/Alder EP/Birch/Birch SP2/Jupiter/Wyvern/Goldeneye。[4]
  • 以Palm-sized PC/Pocket PC为名的设备出现。[3]
  • 即时调度算法。
  • 支持系统架构:ARM,MIPS,PowerPC,StrongARM,SuperH及x86。
  • 32-bit 彩色屏幕。
  • SSL 2.0及SSL 3.0。
3.0 发布于2000年六月 [MSCE3]。[3] 代号Cedar。[4]
  • 针对内核进行重写使CE的即时性推进至微秒层级。[5]
  • Pocket PC 2000,Pocket PC 2002及Smartphone 2002的基础。[3]
  • 优先级数从8增加至256。[3]
  • 系统对象数从65 536增加至4亿1900多万。[3]
  • 使用特殊的APIs对系统进行访问,对注册表的写操作也被限制在部分区域。[3]
4.x 发布于2002年1月。 [MSCE4]。[3] 代号Talisker/Jameson/McKendric。[4]
  • 更改部分驱动结构并增加新功能。[5]
  • 以 "Pocket PC 2003"为基础。[3]
  • 提供蓝牙支持。[3][6]
  • 支持TLS (SSL 3.1),IPsec L2TP VPN、Kerberos。[3]
5.0 发布于2004年8月。[4] 新增了许多功能。[5] 代号 "Macallan".[4]
  • 自动向生产商发送错误报告。[7]
  • 移动式Direct3D,一个基于COM的Windows XP DirectX多媒体API版本。[7]
  • 2D图形DirectDraw和摄像头与影片的DirectShow数字化支持。[7]
  • 支持Remote Desktop Protocol (RDP)。[8]
6.x 发布于2006年9月。代号 "Yamazaki".[4]
  • 进程地址空间从32 MB 增加至 1 GB.
  • 进程数目从32增加至768.[9]
  • 可以使用用户模式和内核模式的设备驱动。
  • Device.exe, filesys.exe, GWES.exe 被移动至内核模式中。
  • SetKMode and set process permissions not possible.
  • 增强系统调用的性能。[10]
7.0

CE v3.0 is the basis for Pocket PC 2002. A successor to CE v3.0 is CE.net. [3] "PocketPC [is] a separate layer of code on top of the core Windows CE OS... Pocket PC is based on Windows CE, but it's a different offering.". And licensees of Pocket PC are forbidden to modify the WinCE part.[11]

[编辑] 最新功能

目前最新的Windows CEWindows CE 6.0,这个版本在内核部分有很大的进步:

  • 所有系统组件都由EXE改为DLL,并移到 kernel space.
  • 全新设计的虚拟内存架构
  • 全新的设备驱动程序架构,同时支持 User Mode 与 Kernel Mode 两种驱动程序。
  • 突破只能运行 32 个工作元(process)的限制,可以运行 32768 个工作元。
  • 每一工作元的的虚拟内存限制由32 M 增加到全系统总虚拟内存。
  • Platform Builder IDE 集成到 Microsoft Visual Studio 2005。
  • 新的安全架构,确保只有被信任的软件可以在系统中运行。
  • UDF 2.5 文件系统。
  • 支持 802.11i (WPA2)及 802.11e (QoS) 等无线规格,及多重 radio support.
  • 支持 x86, ARM, SH4, MIPS 等各种处理器。
  • 提供新的 Cellcore components 使系统在移动电话网络中更容易创建数据链接及引导通话。

在开发环境上,微软也提供兼容于.NET Framework的开发组件:.NET Compact Framework,让正在学习.NET或已拥有.NET程序开发技术的开发人员能迅速而顺利的在搭载Windows CE .NET系统的设备上开发应用程序

用于掌上电脑Pocket PC以及智能手机Smart Phone上的Windows CE系统称为Windows Mobile,目前成熟的最新版本为Windows Mobile 6.5

在2009年10月6日,Windows Mobile亦正式改名为 Windows Phone.

[编辑] 开发工具

Windows CE 可支持 MFCATLSTLCOMActiveX,以及 .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不支持重叠I/O。
  • WinCE的许多APIs功能都受限,如:CreateThread 函数在许多参数在Windows CE下都不支持,第1、2、5的参数值必须设为NULL或0。
 HThread = CreateThread(NULL, 0, Thread, nParameter, 0, &dwThreadID);

[编辑] 参见

[编辑] 参考文献

| 发布时间:2010.06.04    来源:Wiki    查看次数:105