windows ce系统导航 window ce
Windows CE作业系统是Windows家族中的成员,专门设计给掌上型电脑(HPCs)所使用的电脑环境。这样的作业系统可使完整的可携式技术与现有的Windows桌面技术整合工作。Windows Mobile 2003 for Smartphone操作系统与Windows Mobile 2003 for Pocket PC操作系统一样,都是基于Windows CE架构的。
可见,我们日常所说的Smartphone系统和Pocket PC系统都是基于Windows CE架构的智能手机系统,两者有相似之处,但又存在差别。相似之处是,两者同属Windows mobile系列操作系统,都是基于微软PC的Windows操作系统演变而来,因此,它们的操作界面非常相似。同时在硬件系统上,采用微软智能系统的手机一般都采用了英特尔嵌入式处理器,主频比较高,另外,采用该操作系统的智能手机在其它硬件配置(如内存、储存卡容量等)上也较采用其它操作系统的智能手机要高出许多,因此性能比较强劲,操作起来速度会比较快。但是,此系列手机也有一定的缺点,如因配置高、功能多而产生耗电量大、电池续航时间短、硬件采用成本高等缺点。
不同之处是,Smartphone基于Windows CE内核开发的,基于该操作系统的手机无需借助手写笔,只需用手机提供的键盘就能完成几乎所有的操作,因此,使用该操作系统的手机用户单手操作即可,而Pocket PC Phone则必须通过手写笔才能操作,也就是说两类系统最大的不同表现操作方式上。另外,尽管都是基于Windows系统,但在应用软件上也不尽相同。
Windows CE程序设计之历史简介
为了理解Windows CE的历史,你需要理解操作系统和使用操作系统的产品之间的区别。操作系统是微软内部一组核心团队开发的。他们的产品就是操作系统自身。其他团队,比如开发Pocket PC的团队,在操作系统即将发布的时候,获得并使用最新版本的操作系统。这种划分成两部分的方式,可能对理解Windows CE是怎么发展的会产生一些混淆。下面让我们分别看一下这两部分的历史--设备和操作系统自身。
设备
首批为Windows CE设计的是手持式“管理器”设备,配有480*240或640*240的屏幕和Chiclet键盘(计算机常用的一种键盘,有一个很小的矩形键盘)。这些设备,称为手持式PC,在1996年首次面世。在Fall Comdex 97大会上,Windows CE 2.0,一个进行了显著更新的操作系统版本发布了,和它配套的是类似的更新一些的硬件,具有640*240的横向屏幕,一些是彩色的,还具有略大一些的键盘。
1998年1月,消费电子展览会上,微软宣布了两个平台,掌上电脑(译者注:Palm-size PC可以看作Pocket PC的前身,其中使用Windows CE 2.x的称为Palm-size PC,使用Windows CE 3.x的称为Pocket PC)和车载PC(译者注:Auto PC是Windows CE的一种应用模式,多用在一些车载电脑、工业自动控制等场合,可按客户需要修改输入输出方式而不限定使用原有的程序。)。掌上电脑目标直接瞄准了由Palm 0s统治的基于笔式的管理器市场。掌上电脑具有纵向显示的特点,并配有240*320的屏幕,使用输入笔来作为输入方式。但是很不幸,对Windows CE爱好者来说,对这种原始掌上电脑,公众显然缺乏热情。
此后,出现了一种新的迷你膝上式Windows CE设备,配备了触摸式输入键盘和VGA/Super VGA屏幕。这种设备被称为H/PC(专业版),电池可使用10小时,并配备了微软Pocket Office软件改进版。这种设备中有许多具有内置Modem,一些甚至配备了thenstandard 屏幕,移动轨迹垫或者IBM轨迹球设备。
2000年4月,微软宣布了Pocket PC,它对老式掌上电脑(Palm-size PC)做了极大的增强。最初的Pocket PC使用预发布的具有更多功能的Windows CE 3.0。Pocket PC的用户界面也有所不同,具有更加整洁的2纬外观和修改过的主页-Today桌面。然而,Pocket PC最重要的特性是极大的改进了Windows CE的性能。微软做了很多工作来调优Windows CE的性能。这些改进加上更快的CPU,可以让系统像Pocket 管理器期望的那样运行的更快。在这种Pocket PC里,摩尔定律使得Windows CE设备可以跨越这条线:现在硬件已经有能力提供Windows CE需要的运算能力了。
手持式PC在2000年时升级到了Windows CE 3.0。虽然这些系统(现在称为手持式PC2000)在消费领域没有成功,但在工业领域找到了市场。它凭借相对低的费用,大屏幕和长时间电池能力满足了这个机会市场。
2001年晚些时候,Pocket PC更新为Pocket PC 2002。这次发布使用了Windows CE3.0的最终发布版本,并做了一些用户接口方面的改进。同时也增加了Pocket PC Phone版本,在Pocket PC设备中集成了蜂窝电话支持功能。这些设备具有了Pocket PC的功能,也具有蜂窝电话的联通功能,形成了新一代的几乎可以始终连接的移动软件。
微软的另一组人发布了Smart Display(译者注:一种具有触摸屏的无线监视器,可以通过802.11b无线网络连接到个人计算机,并使用Windows XP Professional操作系统的“Remote Desktop”(远程桌面)来访问主机)。它使用Windows CE.NET 4.1系统,具有平板式设备形式,有无线网络访问能力,有一个底座可以连接到PC上。当使用底座的时候,它可以做第2个显示器。当不用底座的时候,它可作为PC的移动显示器。
2003年春季,Pocket PC团队发布了升级版的Pocket PC,称为Pocket PC 2003。系统在用户接口方面没有很多变化,但由于是基于Windows CE.NET 4.2,所以在稳定性和性能方面都有了巨大改进。Pocket PC 2003还集成了蓝牙支持功能,OEM厂商可以选择是否包含该功能。
微软还和OEM厂商合作生产基于Windows CE的蜂窝电话。这些电话中的少部分被称为Smartphone(智能电话),在2002年末发布了,最初是基于Windows CE 3.0。2003年升级到了Windows CE4.2,并增加了一系列特征,包括 .NET runtime功能。
新设备一直不断在发布,例如 Media to Go设备,就是使用硬盘来存储的移动视频播放器。Windows CE操作系统的强大功能,使应用程序凭借运行在这些设备上的简单操作系统 超越了系统能力。
操作系统
虽然面向消费者的产品可以不断产生新闻热点,但最重要的开发工作仍然在操作系统自身。Windows CE从1.0之日就开始不断演化,当它还是一个简单的管理器操作系统时就被寄予厚望。从Windows CE 2.0开始一直持续到今日,微软不断发布Windows CE的嵌入式版本,使开发者可以用在他们自定义的硬件上。虽然像Pocket PC等消费平台占据了宣传的主体,但对基本操作系统的改进是使诸如Pocket PC和Smartphone之类的设备能够运做的基础。
在Fall Comdex 1997大会上,Windows CE 2.0随着手持式PC 2.0一起发布了。Windows CE 2.0增加了网络支持,包括Windows 标准网络功能,支持NDIS miniport驱动模式,以及通用NE2000网络卡驱动支持。虽然增加的COM被限制在进程内服务,但可以用来支持脚本编写。引入了新的显示驱动模式,可以支持像素深度,而不再是Windows CE 1.0中原始的每像素2位了。Windows CE 2.0是Windows CE操作系统中第一个与诸如H/PC等产品分离,独立发布的版本。开发者可以购买Windows CE 嵌入式工具包(ETK),它可以让开发者为特殊的硬件平台定制Windows CE。然而,用过ETK后,开发者会发现,这个产品的功能还没有达到它所宣称的目标。
随着掌上电脑(Palm-size PC)在1998年初发布后,Windows CE又在不断改进。虽然Windows CE 2.01没有按ETK形式发布,但它在减少操作系统和应用程序大小方面做的努力还是值得称道的。在Windows CE 2.01中,C运行时库从每个EXE和DLL都要绑定的静态链接库中去掉了,放到了操作系统里。这极大的减小了操作系统和应用程序的大小。
1998年8月,微软发布了H/PC,配套的发布了操作系统的新版本-2.11版。Windows CE 2.11是从未正式发布的Windows CE 2.1的服务升级包。这一年年末,Windows CE 2.11作为Windows CE平台的2.11版本,发布给了嵌入式开发者社区。该版本支持改进的对象存储,允许要存储的文件大于4M。还增加了对控制台程序的支持,同时增加了MS-DOS风格的命令行解释器CMD.exe的Windows CE支持。Windows CE2.11还增加了Fast IR,用于支持IrDA的4M红外线标准,同时增加了一些特殊功能来支持IP多点传送。最初的安全概念被引入:设备可以检查和拒绝装载没有被认证的模块。
Windows CE 2.12也是作为2.1-白桦(Windows CE 2.1的代号)的服务包发布的。这次发布中最大的亮点是一个增强的平台Builder工具集,它具有一个图形化的前端界面。用一个新的通知接口调整了系统操作,新的接口将不同的通知功能进行了组合。通知的用户接口暴露在平台Builder中,允许嵌入式应用开发者定制通知对话框。微软基于PC的Internet浏览器IE 4.0也被引入到Windows CE中,称为Genie-通用IE控件。这个HTML浏览器控件完善了简单小巧的Pocket Internet浏览器。微软消息队列(MMQ)也被加了进去。Windows CE 2.11中的安全功能“运行/不运行(go/no go)”也增加了“运行,但不信任(go,but don't trust)”的选项。这样,不被信任的模块可以运行,但不能调用关键功能集,也不能修改注册表的某些部分。
期待已久的Windows CE 3.0终于在2000年中发布了。这次发布是跟随同年4月发布的Pocket PC的,它使用了Windows CE 3.0略早一些的内部版本。Windows CE 3.0最大的亮点在它的内核,内核为更好的支持实时功能而做了优化。增强后的内核,支持256个线程优先级(之前的版本是8个),可调整线程周期,可嵌套的中断服务程序,并减少了内核等待时间。
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 精简框架。
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上直接支持硬件分页表功能,内核性能得到了改进。
简述Win CE开发特性及忠告
最近一段时间,移动设备开发越来越多的成为了程序员社区的话题。移动设备主要包括智能手机和PDA,是嵌入式开发中很重要的一个方向。在智能手机领域被大多数手机厂商支持的J2ME无疑是领头羊,微软CE平台的SmartPhone也逐渐成为关注焦点。一直不温不火的PDA市场,也在行业应用领域有所收获,Pocket PC由于其开发与Windows平台的一致性而得到了开发人员的青睐。
在长期关注程序员论坛的过程中,我发现由于Windows CE开发的独特性,加之多个版本并存、缺乏中文参考资料,所以论坛上充斥着大量相同的入门问题。我希望在这里能够为刚转入Windows CE开发的程序员明晰一些概念,将现有的Windows CE版本与开发工具之间的关系给大家解释清楚。
Windows CE与平台开发
Windows CE是微软为嵌入式设备打造的操作系统,而嵌入式设备可谓多种多样,这就要求CE操作系统必须是可定制的,所以微软将Windows CE设计为模块化的操作系统。说简单点,我们可以把Windows CE想像成一盒积木,你可以用积木搭建出任何物体,但不一定要把所有的积木都用上。
Windows CE搭建出来的物体就是平台,是适应某种有固定标准的嵌入式设备的操作系统子集,最著名的平台就是Pocket PC了,是提供给没有键盘的掌上电脑使用的平台。由于平台和硬件的一致性,所以有时候我们也用平台的名称来称呼整个系统――硬件与操作系统的总和。
我们也可以自己开发平台,开发工具是微软提供的Platform Builder,Platform Builder的版本号是和Windows CE的版本号一致的。
更多程序员关心的是应用程序的开发,而应用程序开发是针对特定平台的,我们在开发之前必须安装目标平台的SDK,才能够开发出适应目标平台的开发工具。
Windows CE开发环境综述
初学者另外一个比较糊涂的概念是版本的问题,现在市面上能够见到Windows CE的两代产品,它们的内核分别基于Windows CE 3.0和Windows CE.NET(即4.0)。
微软将今年刚面世的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的中文版。
清晰了平台与CE之间的关系,解释平台与开发工具之间的关系就很容易了。微软提供给应用程序开发者的工具包括:Embedded Visual Tools 3.0,其中包括EmbeddedVisual C++3.0和Embedded Visual Basic 3.0;Embedded Visual C++ 4.0和Visual Studio.NET。
开发工具的版本号是与Windows CE的版本号对应的。EVC3.0和EVB3.0是用来开发基于Windows CE 3.0平台的应用程序的,比较常见的平台有:Pocket PC 2002、Pocket PC 2000、Palm-size PC、HPC。而EVC4.0是用来开发Windows CE.NET平台的程序的,主要包括Pocket PC 2003和SmartPhone 2003。
Visual Studio.NET针对嵌入式设备开发需要SDE的支持,而VS.NET 2003中包括了SDE,不需要另外安装。Visual Studio.NET开发的程序需要目标平台支持.NET Compact Framework。现在支持.NET Compact Framework的平台有Pocket PC 2002和Pocket PC 2003。这里需要注意的是SmartPhone 2003是不支持.NET Compact Framework的。
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中包含模拟器,在没有实际设备的情况下,可以利用模拟器来调试程序。
这里需要注意的是,开发环境和模拟器之间是通过网络连接协议进行通讯的,所以开发所用的计算机上必须有一个活动的网络连接。如果没有,可以安装微软的虚拟网卡。
EVB的开发环境与VB类似,因为Windows CE应用程序需要在模拟器或者实际设备上调试,所以我们必须选择程序的输出目标。如果您选择了Emulation,在您按下运行(或F5)后,EVB将自动启动模拟器,并把程序下载到模拟器中。
由于新的Windows CE.NET将不再支持EVB,微软建议EVB程序员使用VB.NET开发新的程序,而对于原有的EVB程序也给出了迁移路径,关于这方面的论述,您可以参考MSDN文章《Moving from eMbedded Visual Basic to Visual Basic .NET》。
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
更多阅读
航睿安卓系统DVD导航仪用后情况简介 飞利浦dvd导航仪
途观11年旗舰版所配的RCD510,其6.5寸屏幕除了倒车时显示虚拟图像外,其余几乎就没多大用处。因此,一直想把它更换掉,换成一个可以像平板电脑那样的导航仪。当然,最好能保留原RCD510的所有功能,并增加导航、DVD碟片及视频文件播放、显示倒车
图 关于手机图吧导航软件mapbar的常见问题及使用说明 系统常见问题处理说明
关于手机图吧导航软件mapbar的常见问题及使用说明您的手机必须是安装有正版图吧导航软件的手机(目前官方只提供手机预装,不提供自下载安装),如果该手机的IMEI号并没有在图吧授权的手机品牌数据库中,则将无法激活。如出现此情况,请查验您的
北斗卫星导航系统 北斗高清卫星村庄图
北斗卫星导航系统——世界第三套全球卫星导航系统工程总投资:100亿元工程期限:1994年——2020年北京时间2007年2月3日凌晨零时28分,中国在西昌卫星发射中心用“长征三号甲”运载火箭,成功将第四颗北斗导航试验卫星送入太空。北斗卫
伽利略卫星导航定位系统_PureSky 北斗导航定位卫星
2002年3月,欧盟不顾美国政府的阻挠,决定启动伽利略(Galileo)系统的组建计划,以便使欧洲拥有自己的卫星导航定位系统。这是一项具有战略意义 的计划,不仅能使欧洲在安全防务和军事方面保持主动,在航天领域内继续充当重要角色,而且可获得很
北斗望2020年实现全球导航定位 北斗卫星导航定位系统
中国航天科技集团董事长雷凡培9日接受采访时说,下一步将建成5颗静止轨道卫星和30颗非静止轨道卫星组成的北斗全球卫星导航系统,在2020年左右实现全球导航定位,为全球用户提供导航定位服务。雷凡培说,截至目前,我国已成功发射4颗北斗导航