什么是Windows CE -程序员宅基地

技术标签: 手机  嵌入式操作系统  Microsoft  windows  microsoft  微软  internet  

 简而言之,Windows CE其实就是一个操作系统。它是一个抢先式多任务并具有强大通信能力的Win32嵌入式操作系统,是微软专门为信息设备、移动应用、消费类电子产品、嵌入式应用等非PC领域而从头设计的战略性操作系统产品。  

  你也许会有一点奇怪,为什么微软会推出这个Windows CE呢?   

  不知你是否注意到,在我们的日常生活中,人们开始普遍使用手机、PDA、手持和掌上电脑等信息电器来储存和处理各种重要信息,这一切都似乎是在预示着一场新的革命。这场革命就是,计算机占领了桌面之后,继续其小型化和分散化的趋势,更广泛地进入人们工作、生活和娱乐的各个方面。这场革命又被近年来Internet的迅猛普及所推动,一个网上世界已经出现,人们随时、随地获取所需信息并保持与他人接触的需求愈发强烈。   

  早在微软创办之初,比尔·盖茨就曾梦想“每人桌上一台PC,每台PC中运行微软的软件”,这就是后来著名的“信息随手可得”的梦想,而这个梦想在今天已经变成了现实。微软为PC提供了出色的操作系统平台(Windows 9x/NT)、高效率的软件开发工具和功能强大而易用的通用软件(Microsoft Office等),使许多人的工作和生活从计算机技术中受益无穷。   

  但是PC的价格、使用的复杂性仍使得许多人与之无缘。PC文化仍不是彻底的“庶民文化”,目前PC的复杂性对于更为普遍的大众来说仍是一种“精英工具”。PC已成为人们进入网上世界的最后一道门坎,例如中国已在Internet干线、接入、内容提供等诸方面投入巨资,但就因为这一“最后一公里”难题,中国的Internet产业迟迟不能起飞。  

  IBM在80年代初犯下的错误:当年IBM固守“主机文化”,抱残守缺,错失了电脑向桌面这一新疆域拓展的良机,成为自己引发的PC革命的旁观者。所以微软在向个人桌面和企业管理领域提供了两个方便易用且功能强大的操作系统之后,又从头设计了Windows CE,以面向更为广大的移动计算、信息家电等被微软称之为“非PC”的应用领域。微软希望在这一新的应用领域仍然能够扮演操作系统平台、开发工具和通用软件供应商的传统角色。   

  “CE”这个名字的来源已无准确历史档案可查。但是微软内部的人员普遍认为CE中的C代表了消费类
(Consumer)、袖珍(Compact)、通讯能力(Connectivity)和伴侣(Companion)。CE中的E代表了电子产品(Electronics)。若把CE看作是电脑启蒙(Computer Evangelism),就更能充分反映微软从头设计一个全新的操作系统的意义。   

  嵌入式操作系统是一种用途广泛的系统软件。工业控制是它的传统应用领域,在这一领域里已有一些存在了多年的比较成功的嵌入式操作系统。但近年来随着家电信息化成为愈来愈明显的趋势,对嵌入式操作系统提出了许多新的要求,例如熟悉和友好的用户界面、统一的编程界面、强大的通讯功能等等都已变得日趋重要。

  而恰好从一开始,微软就以其操作系统产品而闻名。从MS DOS到Windows 9x/NT、以及现在的Windows CE,微软公司最强大的软件产品往往是那些最终用户看不见的产品。Window s操作系统包含用户可见部分以及用于与计算机交互的用户界面部分,但还有许多更强大的功能是“冰山隐藏在水面之下的部分”,例如与其他计算机通讯的能力、多媒体等等。Windows CE就是具备这些强大功能的、微软的操作系统家族中的最新成员。

Windows CE的设计目标   

  Windows CE的设计目标是:模块化及可伸缩性、实时性能好,通信能力强大,支持多种CPU。

  从操作系统内核的角度看,Windows CE具有灵活的电源管理功能,包括睡眠/唤醒模式。在Windows CE中,还使用了对象存储(Object Store)技术,包括文件系统、注册表及数据库。它还具有很多高性能、高效率的操作系统特性,包括按需换页、共享存储、交叉处理同步、支持大容量堆(Heap)等。

  Windows CE拥有良好的通信能力。它广泛支持各种通信硬件,亦支持直接的局域网连接以及拨号连接,并提供与PC、内部网以及Internet的连接,包括用于应用级数据传输的设备至设备间的连接。在提供各种基本的通信基础结构的同时,Windows CE还提供与Windows 9x/NT的最佳集成和通信。   

  Windows CE的图形用户界面相当出色。它拥有基于Microsoft Internet Explorer的Internet浏览器,此外,还支持TrueType字体。开发人员可以利用丰富灵活的控件库在Windows CE环境下为嵌入式应用建立各种专门的图形用户界面。Windows CE甚至还能支持诸如手写体和声音识别、动态影像、3D图形等特殊应用。   

  Windows CE可能会带给中国IT和家电产业一次绝好机会。由于经济和教育水平的限制,中国的计算机及软件行业一直缺少一个规模化的用户群,难以形成良性循环。同时中国的家电行业在成功地满足了国内传统家电市场的需求后,目前面临着生产能力过剩、过度竞争的难题,急需拓展新的增长点。而此时Windows CE所针对的领域及其本身的优势,无疑意味着崭新的机会和广阔的发展空间。Windows CE将为中国的IT和家电产业打开新的窗口,提供一个崭新的面向众多消费者的发展领域。至今为止,中国国内的许多厂商已经在和微软展开合作,推进Windows CE在中国的应用。可以肯定,在不远的将来会有更多的合作伙伴加入Windows CE阵营!   


Windows CE 常见误解纠正

误解一:Windows CE等于手持电脑。   

Windows CE是模块化、结构化的操作系统,也是许多截然不同的设备的基础,而不仅支持手持电脑。   

误解二:Windows CE是Windows 95或NT的简化版。   

Windows CE是基于Win32 API而从头开发的,是新型的信息设备的平台。   

误解三:掌上电脑是手持电脑的一种。   

掌上电脑 (Palm PC)的操作系统内核与手持电脑(Handheld PC)一样,但各自有其独特的用户界面和应用程序。
前些日子,一条微软发布的新闻吸引了大众的目光,新闻介绍说微软将推出Windows CE 5.0,该版本的Windows CE将会扩大开放程序源代码的范围,当有人问微软发言人范围会扩大多少时,微软的发言人随口说了一句:“70%或许是全部,谁知道呢。”这成为了最爆场的一句话。

其实细心的人早就发现了,这并不是微软第一次公开Windows CE的源代码。早在Windows CE.Net的时候,微软就曾经公开过部分Windows CE的源代码,不过得到源代码的只有微软的亲密伙伴和某些研究机构。程序源代码的数量也少得可怜,只有不到200万行的40%。似乎一夜之间,微软就变得大方了起来,你仅仅需要少吃半个汉堡包,省出3个美金的价格就可以换来Windows CE的超出70%的源代码,而且你想怎么改就怎么改,微软到底怎么了?

微软怎么了,的确微软此次行动不同于往常,给人的感觉明显是“厚道”多了,不过在微软的开放源代码授权条款里也明确声明了几点。微软强调,有别于开放源代码界常用的GPL授权条款,使用Windows CE 5.0源代码于商业用途与产品开发的厂商,可享有其衍生程序代码的所有权,无须与微软、合作伙伴或竞争者共享。此外基于Windows CE平台的硬件供应商和OEM解决方案的用户,有权力来调用Windows CE源代码,这种权力包括操作系统内核、图形用户接口、文件系统、设备驱动程序、网络服务器和更多代码的透明性。当然,这个许可是有附加条件的,对代码进行的任何修改都必须得到Microsoft的许可,同时,Microsoft要求至少在六个月里不允许在核心的Windows CE操作系统中合并任何新特性,对违反协议的公司将提出赔偿要求。

这样看起来Windows CE开放源代码似乎意义就变得淡薄多了,不过在Windows这样一个响亮的名号召唤下,在新版本还没有推出之前就已经有60多家厂商争抢着报名参加,由此我们可以看出Windows在厂商眼中的魅力。而诱惑厂商的Windows CE究竟魅力何来呢?

Windows CE的价值核心

对于大多数电脑用户来说,虽然每天都能够听到Windows家族那熟悉的开启音乐,但是多数用户对于这个家族个头最小的Windows CE还是不甚了解的。以至于很多人单纯地认为Windows CE只是一个仅仅能够安装在PDA中的简化版Windows。如果你也这么认为,那么你就错了。Windows CE是Windows Embedded 操作系统家族的一员(这个家族还包括了Windows XP Embedded),Windows Embedded就是Windows嵌入式操作系统的统称。而微软这样称赞自己的Windows CE:结合了一个功能强劲的实时嵌入式操作系统和众多强大工具,允许用户快速开发出新一代小内存占用的智能移动设备。

嵌入式操作系统,这好像对于多数用户来说是一个陌生的名词。那么什么是嵌入式操作系统呢?一般来说,嵌入式系统是指那些“执行专用功能并被内部计算机控制的设备或者系统。嵌入式系统不能使用通用型计算机,而且运行的是固化的软件,用术语表示就是固件(Firmware),终端用户很难或者不可能改变固件。”这的确非常的绕口,不过字典上就是这么解释的。

我相信那些对计算机技术有一些了解的人理解上面的定义应该没有任何问题,但是对于不熟悉计算机技术领域的人们来说可能存在一些障碍。因此我找到了一个更简单的定义是:“嵌入式系统就是包含了用户未知的计算机的设备。”但是,这个定义好像也需要某些解释。为此我自己总结了一个非官方的解释,那么就镶嵌在普通PC以外的所有电子设备中的操作系统。我再举几个实际的例子,就在你身边的嵌入式系统。

当你打开手机时;当你看电子表的时间时;当你使用IC卡时;当你按动微波炉或者空调机的选择键时,你实际上就在无意中使用了嵌入式操作系统,这就是嵌入式操作系统,它们固化在汽车、电梯、电视、录像机、游戏机、CD机等我们身边一切不注意的小东西上。当然,嵌入式操作系统在工业机器人、医药设备、电话系统、卫星、飞行系统等领域同样扮演了重要的角色。正是“容易忽视”这一个特性将嵌入式计算机与通用PC计算机相区分。

打开窗户更精彩

Windows CE作为微软公司最得意的嵌入式操作系统,不仅仅支持包括ARM、Motorola、Philips、Toshiba等多种处理器,而且能够镶嵌在数字媒体接收设备、企业终端、企业Web Pad等设备中。Windows CE作为Windows家族的一员,不仅仅可以跟其他的家族成员实现无缝链接,进行数据交换,更重要的是Windows CE完全支持程序员熟悉的VC++与VB编程方式。

与我们常见到的操作系统不同,嵌入式操作系统必须要符合硬件的设计要求进行改动,Windows CE如果不公布源代码,那么硬件厂商很难将其完美的植入自己的产品中,相比Linux、Java等灵活的操作系统来说,Windows CE就自然受到冷遇了。不过开放源代码之后的Windows CE将会大大的吸引厂商的目光,原因很简单,Windows CE的规范性。

Java和Linux最大的魅力就是灵活性,程序员可以随意的自行编写改动添加任何代码,以编写出自己想要的效果,但是这样做的后果就是兼容性大打折扣。你或许也有这样的抱怨,同样是摩托罗拉的手机,操作系统都是Java内核的J2ME程序,但是不同型号的手机在互相传递彩信图片时,有的型号就能够正常显示,而有些型号就不能够正常显示,不同品牌的手机更是不能互相发送图片。造成这样后果的原因很简单,虽然J2ME也规范自己的标准和编程逻辑,但开发者必须按照各种设备的不同硬件特点来进行Java应用的开发。移动设备的显示尺寸是造成各J2ME设备差异性的主要因素。显示尺寸的不同将使应用程序无法通用在不同设备中,比如说某些功能菜单显示不了,某些功能按钮显示不了等等。这些操作键在MIDP规范中(J2ME中的手机规范)定义为 “Softkey”。因此,这一差异性使得开发人员不得不针对具体的各种手持设备进行开发,在一种设备中调试通过的程序,还要在另外一种设备中进行调试。如果希望应用程序具备更好的通用性,那么自然要研究更多的手持机,这样就造成了开发成本的提高。

Windows CE的高度统一性正好弥补了这些弱点,更重要的是Windows CE将会和Windows家族其他成员组建成一个强大的网络。比如,采用Windows Mobile(采用Windows CE内核专门针对手机的操作系统)的手机和采用Windows操作系统的电脑,还有采用Windows CE的PDA设备可以实现无阻碍的数据交流,你甚至可以在手机中打开Word和Excel文档,使用IE浏览器上网,用MSN Messenger聊天,Outlook收发邮件,Windows Media Player观看网络视频等,所有这一切都是你所熟悉的。

如果使用Linux,你则还需要自己找来各种资源,还得考虑整合性的问题。所以在未来,在网络大行其道的明天,Windows CE在开放源码后无疑魅力四射,让所有的设备厂家心动不已。毕竟,减少软件开发周期和成本就等同于节省更多的钱留在自己的口袋里,何乐不为?

握着自由 憧憬明天

写到这里我甚至开始怀疑你还有没有兴趣继续听我说下去,毕竟,Windows CE的整合性能力已经开始让所有的人心动了。连我自己都急切的盼望着能够让自己的手机随意地在网络上下载任何一段铃声和图片,而不需要再去看看这些铃声和图片是否能够支持我所使用的手机型号。财大气粗的汽车厂商们都开始和微软一起憧憬美好的未来,2010年时,马路上三分之一的汽车将会使用Windows CE作为自己的控制系统,你将会在驾车中使用Windows Media Player播放你的CD音乐。最新的新闻甚至说Windows CE已经加入了RFID这种未来将会取代条形码的新识别技术,到时候你就可以口袋里装着手机,然后随意在超市中拿下商品装进口袋里,然后回家走人,你会发现Windows CE让所有的超市收款员都下岗了,因为费用会在你的手机,甚至信用卡中自动扣除,原因很简单,从手机到信用卡提款机再到信用卡,它们都是内嵌的Windows CE。

这不是梦境,公开源代码后的Windows CE会很快地做到这一切。从微软模仿苹果公司进而一统PC硬件平台的历史来看,微软的最高目标就是占领市场,因此这一结果是自然而然的。不过这样一个互联互通的操作平台会重复Windows在PC机上的统治地位。我很担心,霸主操作系统诞生后会让所有的设备忍受PC电脑一样的痛,病毒会在所有采用Windows CE内嵌的手机、PDA、汽车、微波炉、电视机、电冰箱、洗衣机、电子缝纫机和PC中无障碍的传播。这会不会就是我们最终的结果?

不过我知道,我非常渴望一个真正属于自己的操作系统,如同期待Windows CE一样,我希望我的手机不会中病毒,也不会将我自己的秘密泄露在所有人的电视机甚至微波炉的内存里,我希望我能够若无其事的打开电视机,在期待中等待我最爱的节目的开始,而不是半夜去购买能够为我电视机杀毒的另一个基于Windows CE的插件。对于Windows CE我就这些愿望了
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/zhangjie_xiaoke/article/details/3403784

智能推荐

无人机的位置限制-程序员宅基地

文章浏览阅读215次。无人机的位置限制

【三十天精通 Vue 3】 专栏内容介绍_三十天精通vue 3-程序员宅基地

文章浏览阅读2w次,点赞51次,收藏57次。在这个专栏中,我们将带你深入了解 Vue 3 的各个方面。首先,我们将带你了解 Vue 3 的新特性和改进,包括 Composition API、Provide/Use Case、Vuex 3 等。然后,我们将详细介绍 Vue 3 的组件化开发、路由、状态管理等方面的内容。以上是专栏的链接(持续更新)_三十天精通vue 3

svn服务器连接失败:连接主机无反应_阿里云服务器安装svn后,本地检出一直链接不上-程序员宅基地

文章浏览阅读1.1k次。背景:阿里云服务器,服务器上安装了svn服务,远程客户端TortoiseSVN连接svn服务器无反应。4、服务器重启防火墙以启用设置。1、服务器新建防火墙端口规则。3、服务器设置防火墙限制端口。2、服务器关闭防火墙。5、服务器打开防火墙。_阿里云服务器安装svn后,本地检出一直链接不上

毕业设计:python电影推荐系统 爬虫 可视化分析 Django框架(源码+文档)_ddddddddddddddddddddddddddddjango可视化ui 爬虫系统-程序员宅基地

文章浏览阅读1k次,点赞23次,收藏24次。毕业设计:python电影推荐系统 爬虫 可视化分析 Django框架(源码+文档)_ddddddddddddddddddddddddddddjango可视化ui 爬虫系统

poker_德扑计算器-程序员宅基地

文章浏览阅读505次。Poker“Texas Hold’em poker”的规则很简单,就是五张牌比大小,本质上是个决策游戏。职业扑克大赛的奖金常常比职业足球和网球还高。职业扑克选手的重大决策涉及到的金额并不比一般公司的领导少。下多大的注、亮哪些牌、要不要来个虚张声势、是否假装自己的牌很弱、跟还是不跟,你的每个决策都是钱。一场德扑通常要大家坐下来玩几个小时,平均每个小时要玩30把,也就是说一把只有两分钟..._德扑计算器

db2 mysql oracle_主键生成:db2 mysql oracle-程序员宅基地

文章浏览阅读172次。Oracle中并没有主键自增,但可以设置触发器; mysql 没有sequence,但可以使用函数。1、自增主键每个表最多只能有一个标识列自增值修改、唯一键冲突和事务回滚都会导致自增主键id不连续的情况 ,详见MySQL自增主键详解插入sql:insert into sys_users(user_name,user_pwd,sex) values(‘shaoduo’,’shao111’,’男’..._db2 自增主键

随便推点

计算机售电卡端口错误怎么弄,ZTSD7000售电系统使用简易说明.doc-程序员宅基地

文章浏览阅读2.8k次。ZTSD7000售电系统使用简易说明ZTSD7000售电系统安装软件使用简易说明山东2013-8-14硬件设备读卡器一台;数据线一条;电源一台;正泰仪表专用卡:清零卡、设置卡、恢复卡(3张)。卡的分类空白卡(新卡):蓝色;清零卡(银白色):对卡表进行清零,可将卡表重置为出厂状态;设置卡(银白色):对卡表进行系统号设置,设置后卡表处于厂外状态;恢复卡(银白色):对卡表进行系统号清零,设置后卡表处于厂..._ztsd售电卡机端口号错误

mysql存储过程定义临时变量_Mysql 存储过程、临时变量定义、IF、Case-程序员宅基地

文章浏览阅读1.2k次。-- Mysql 存储过程/*set @result = 0;create procedure login(-- 定义参数,有in、out、inout三种类型in user varchar(10),in pass varchar(10),out result int)begindeclare passd varchar(10);-- declare 声明临时变量、类型,然后用set 进行赋值,de..._存储过程定义临时变量

Java 12K 需要掌握的-程序员宅基地

文章浏览阅读406次。产品设计->产品上线流程开发框架SpringBootyml 通过什么方式区分开发、测试、生产profile, application-dev,-test,-promaven 怎么区分环境也是profile方式配置属性spring-config-process全局异常处理GlobalExceptionHandler自定义异常的意义try catch区分异常类型处理业务逻辑系统标准输出,通过包装实体Resut方式实现{"data":object,

TikZ从零开始(二)A Petri Net for Hagen_tikz rectangle-程序员宅基地

文章浏览阅读973次。文章目录0、前言1、问题陈述2、创建环境3、节点引论4、用`At`语句放置节点5、使用样式(Styles)6、节点大小7、命名节点8、使用相对位置放置节点9、在节点旁添加标注10、连接节点11、给连线添加标注12、添加蛇形线与多行文本13、使用图层:矩形背景0、前言本教程翻译自TikZ官方文档,在这里我们学习节点(node)的绘制1、问题陈述要画一个这样的图2、创建环境\documentclass{article} \usepackage{tikz}\usetikzlibrary{arro_tikz rectangle

STM32CUBEMX配置教程(九)STM32串口DMA收发数据_stm32cubemx中引脚黄色和绿色-程序员宅基地

文章浏览阅读1w次,点赞21次,收藏121次。STM32CUBEMX配置教程(九)STM32串口DMA收发数据基于STM32H743VI使用STM32CUBEMX两年了,始终觉得这个工具非常的方便,但因为不是经常使用,导致有些要点总是会有些遗忘,因此写下这一系列教程以供记忆,顺便让我这个大萌新给广大小萌新提供一些学习帮助。此次工程效果:串口115200波特率,接收串口助手XCOM发送的数据并发送回XCOM本次配置的工程链接在最下方,有需要自取。0基础可以从第一个教程开始阅读STM32CUBEMX配置教程(一)基础配置STM32CUBEMX_stm32cubemx中引脚黄色和绿色

Linux&Windows系统双系统_双系统怎么创建快捷方式-程序员宅基地

文章浏览阅读2.8k次。一.在windows环境下安装Ubuntu18.04操作系统点击:(亲测有效)操作指南二.修改输入法1.击右上角下三角符号:2.点击设置:3.选择区域语言(OK):二.更改文件权限:相信你已经在安装ubuntu系统时设定了密码,如此可进入Root模式以修改文件权限。Ctrl+ALT+T:(同时按下)进入terminal输入su,并输入密码(注意:密码是不可见的,所以别..._双系统怎么创建快捷方式

推荐文章

热门文章

相关标签