Windows CE开设计之历史简介

时间:2011-09-04

    为了理解Windows CE的历史,你需要理解操作系统和使用操作系统的产品之间的区别。操作系统是微软内部一组团队开发的。他们的产品就是操作系统自身。其他团队,比如开发Pocket PC的团队,在操作系统即将发布的时候,获得并使用版本的操作系统。这种划分成两部分的方式,可能对理解Windows CE是怎么发展的会产生一些混淆。下面让我们分别看一下这两部分的历史--设备和操作系统自身。设备首批为Windows CE设计的是手持式“管理器”设备,配有480*240或640*240的屏幕和Chiclet键盘(计算机常用的一种键盘,有一个很小的矩形键盘)。这些设备,称为手持式PC,在1996年首次面世。掌上电脑目标直接瞄准了由Palm 0s统治的基于笔式的管理器市场。掌上电脑具有纵向显示的特点,并配有240*320的屏幕,使用输入笔来作为输入方式。但是很不幸,对Windows CE爱好者来说,对这种原始掌上电脑,公众显然缺乏热情。此后,出现了一种新的迷你膝上式Windows CE设备,配备了触摸式输入键盘和VGA/Super VGA屏幕。这种设备被称为H/PC(版),电池可使用10小时,并配备了微软Pocket Office软件改进版。这种设备中有许多具有内置Modem,一些甚至配备了thenstandard 屏幕,移动轨迹垫或者IBM轨迹球设备。

  Windows CE与平台开发

  Windows CE是微软为嵌入式设备打造的操作系统,而嵌入式设备可谓多种多样,这就要求CE操作系统必须是可定制的,所以微软将Windows CE设计为模块化的操作系统。说简单点,我们可以把Windows CE想像成一盒积木,你可以用积木搭建出任何物体,但不一定要把所有的积木都用上。

  Windows CE搭建出来的物体就是平台,是适应某种有固定标准的嵌入式设备的操作系统子集,着名的平台就是Pocket PC了,是提供给没有键盘的掌上电脑使用的平台。由于平台和硬件的一致性,所以有时候我们也用平台的名称来称呼整个系统——硬件与操作系统的总和。

  Windows CE开发环境综述

  初学者另外一个比较糊涂的概念是版本的问题,现在市面上能够见到Windows CE的两代产品,它们的内核分别基于Windows CE 3.0和Windows CE.NET

  微软将今年刚面世的Pocket PC 2003和Smart Phone 2003统称为Windows Mobile 2003,我们大多数时候还是习惯地沿用老称谓。

  而市面上经常见到的Pocket PC 2002是基于Windows CE 3.0的平台,而Pocket PC 2003则是基于Windows CE.NET的平台,需要注意的是,Pocket PC 2003的内核是Windows CE.NET 4.2。而SmartPhone2003也是基于Windows CE.NET的。SmartPhone的初版本是2002,基于Windows CE 3.0的,但是微软没有推出SmartPhone2002的中文版。

  EVB开发入门

   微软已经宣布EVB不再支持Windows CE.NET,所以EVB的终版本是3.0。但由于EVB的易上手性和快速开发的特点,在VS.NET横空出世之前,它成为Windows CE平台上快速开发的不二之选。现在EVB仍然适合Windows CE 3.0平台上小型应用程序的快速开发。如果您不是专职的Windows CE程序员,而只是需要在Windows CE平台上开发整个系统的一部分,那么EVB可以让您用很短的时间开发出您想要的程序。

  EVB的开发环境的搭建也是十分简单,您可以从微软的网站上EVT 2002,其中包含了EVC 3.0、EVB 3.0和Pocket PC 2002 SDK和SmartPhone 2002 SDK。按照提示将EVB和Pocket PC 2002 SDK安装好后就可以进行开发了。SDK中包含模拟器,在没有实际设备的情况下,可以利用模拟器来调试程序。

    这里需要注意的是,开发环境和模拟器之间是通过网络连接协议进行通讯的,所以开发所用的计算机上必须有一个活动的网络连接。如果没有,可以安装微软的虚拟网卡,具体过程请参照我在CSDN专栏里的文章《在无网络的环境下使用模拟器》。

  EVC开发入门

  无论是Win32平台还是WinCE平台,Visual C 都是一个强大的开发工具。而EVC也是WinCE上的主流开发工具。EVC支持MFC类库的子集,可以给开发者提供强大的支持,也使Win32平台上的VC程序员可以很容易地迁移到WinCE平台上。但由于MFC类库需要一个DLL,所以对某些存储空间有限的嵌入式设备来说,这是个很大的负担,所以SmartPhone就不支持MFC。

  说这么多,让我们来创建一个EVC的工程。是不是和VC很像,需要提醒大家注意的是,由于嵌入式设备支持的CPU种类很多,我们在选择创建工程类型的同时,也要把该工程所支持的CPU类型选择好。创建工程的过程和VC是一样的。当然不同的平台支持的工程类型是不同的,比如Pocket PC 2003有支持MFC和API的两种工程,而SmartPhone 2003则只有支持API的一种工程。

 
 

  EVC中比VC环境中多了一行下拉菜单的选项,分别用来选择:工程、SDK、CPU类型和输出设备。以Pocket PC为例,在实际设备上调试应该选择Win32(WCE ARMV4)Debug ,而在模拟器上则需要选择Win32(WCE emulator)Debug。

  VS.net开发入门

  又来到我们的。NET时间了,我怎么说又?近大家都被JAVA和。NET搞得头昏脑胀了吧?不管大家怎么吵,。NET Compact Framework对于手中缺少开发利器的嵌入式程序员无疑是一大福音。Visual Studio .NET 2003完全支持对移动设备的开发,好了,让我们开始一段奇幻的。NET之旅吧。

  打开VS.net 2003,选File - New – Project,就打开了上面的界面。让我们来建立一个Visual C#的工程,然后选择Smart Device Application,然后OK。

  你在这里要选择目标设备:Pocket PC、SmartPhone、Windows CE(指的是其他平台),下面则是选择创建的工程类型,我们选择“Windows Application”,左边是选择的平台所支持的模拟器。点击OK,我们就可以进入VS.NET的主界面了。

  选择输出设备的情况和EVB十分类似,只需要选择输出设备,而不用选择CPU类型。当然了,因为。NET是运行在虚拟机上的了。在CPU类型众多的嵌入式领域,。NET和JAVA才能真正发挥自己的强项。

  当然,我们也可以选择VB.NET作为开发智能设备的语言,情况和C#完全一样。目前智能设备开发只支持C# 和VB.NET。爱好C 的程序员可能还要等上一段时间。

  2001年末,Windows CE 4.1跟随Windows CE 4.0之后发布了,增加了IP v6支持,Winsock2支持,一组支持applets的新功能,以及一个叫Power Manager的例子。Windows CE 4.1支持。NET 精简框架……NET 运行时库作为一个快速修复包(QFE),在操作系统发布后提供的。

  2003第2季度,Windows CE.NET 4.2发布了。这次升级,提供了很棒的、OEM厂商期待的新特性-在嵌入式系统上支持Pocket PC应用程序。Pocket PC特有的API,比如菜单条、软输入法以及其它解释器特性,被移植到基本操作系统里了。为支持名字空间扩展,浏览器Shell被重写。通过在某些CPU上直接支持硬件分页表功能,内核性能得到了改进。

  Windows CE 3.0改进的地方不仅仅在内核上。一个新的COM组件被加入进来,用来完善2.0就有的进程内COM功能。新的组件支持完整的进程外COM和DCOM功能。对象存储区域也做了改进,可以支持256M RAM了。对象存储区域里的文件大小限制也提高到了32M/文件。Platform Builder 3.0的附的软件包加入了更多的功能,增加了media player控件,提高了多媒体支持。用PPTP,ICS和远程桌面显示功能改进了网络支持。还正式引入了DirectX API。Windows CE接下来的一个版本,改变的不仅仅是新特性,产品的名字也改了。2001年初,Windows CE.NET 4.0发布了。这个版本里,改变了虚拟内存的管理方式,将每个应用程序的虚拟内存空间扩大了1倍。Windows CE.NET 4.0还增加了新的驱动装载模式,服务(Services)支持,新的基于文件的注册选项,蓝牙功能,802.11以及1394支持。具有讽刺意味的是,Windows CE.NET 4.0虽然叫。NET,但却不支持。NET 精简框架。


  
上一篇:中国普天无线智能室内空气质量监测系统健康体验
下一篇:研究I2C总线多主通信与软件设计

免责声明: 凡注明来源本网的所有作品,均为本网合法拥有版权或有权使用的作品,欢迎转载,注明出处。非本网作品均来自互联网,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。

相关技术资料