英创信息技术WEC7与WEC2013介绍

描述

WEC2013是微软最新一代Windows Embedded Compact操作系统(前一个版本是WEC7),WEC2013通常也叫作Compact 2013或WinCE8,英创公司EM335x/EM3352系列工控主板可以支持WEC7和WEC2013两个版本。本文希望站在应用开发人员的角度,比较WEC2013与WEC7之前的差别。

系统桌面

WEC2013最明显的变化是去掉了传统的系统桌面,取而代之的是一个称为Mini shell的界面,如图1和图2。

图1 WEC7标准桌面

通过WEC7标准桌面,用户可以方便的使用鼠标或触摸屏操作控制面板、设置网络参数、建立拨号连接、查看磁盘文件等等,在系统调试阶段十分方便的。而WEC2013的Mini shell仅有一个操作入口,即通过点击桌面左上角Command进入命令行窗口,所有的操作必须通过命令行完成。微软WEC团队内部对是否去掉传统桌面有过激烈的讨论,从他们的博客可以了解到,为了提高系统效率和压缩内核代码大小,最终决定去掉传统桌面。还有一个重要的原因是他们意识到用户产品在发布时,应用程序通常全屏运行,在有些情况下甚至不希望出现WinCE桌面。

图2 WEC2013 Mini shell

应用程序开发

WEC7使用Visual Studio 2008作为应用程序开发工具,WEC2013使用Visual Studio 2013或 Visual Studio 2012,VS2013(VS2012)使用了新的ARM 编译器,支持最新的C运行时库。对于非托管的应用程序开发,微软的ATL、STL、MFC库都采用了最新的C++运行时和新的Microsoft C++编译器。对于托管代码的应用程序开发,WEC2013支持.NET Compact Framework 3.9(https://msdn.microsoft.com/en-us/library/ee486593.aspx),相比.NET Compact Framework 3.5,3.9在内存使用情况,启动速度等性能方面有较大的提升,.NET Compact Framework 3.9向下兼容.NET Compact Framework 3.5。

应用程序调试方法

WEC7应用程序可以通过网络或usb(基于微软ActiveSync)在线调试。同样基于系统效率的考虑,WEC2013去掉了对AcitveSync的支持,因此只能通过网络调试应用程序,这也意味着在开发调试应用程序之前,必须先正确配置WEC2013设备的网络参数。针对WEC2013应用程序的调试,我们提供了单独的文章《WEC2013应用程序调试方法》可供参考。

USB WiFi

USB WiFi驱动一般是WiFi模块厂方提供,市面上的WiFi通常只支持到WinCE6.0,WEC7到目前为止都没有可用的WiFi方案。WEC2013 WLAN采用NDIS6.x驱动,同时集成了微软本地USB协议栈和WPA/WPA2-PSK客户端,自带了Realtek公司的RTL8188CU、RTL8192CU和RTL8188EU 802.11 WiFi驱动。

WEC2013性能提升

WEC7虽然支持ARMv7指令,但由于只能使用较老的编译器和汇编器,因此不支持THUMP2指令集,也就不能发挥ARMv7的优势。WEC2013的编译器升级到了最新的ISO C++ 11,汇编器也采用了新版本的EABI(ARM Embedded-Application Binary Interface),可以支持ARMv7 THUMB2指令集。我们将同一段代码分别使用VS2008和VS2013编译,然后在WEC7和WEC2013上运行,直观的比较结果是支持ARMv7 THUMB2指令集的WEC2013应用程序的代码尺寸比WEC7小30%,执行速度快20%。关于WEC2013性能提升的测试可参考《WEC2013与WEC7性能比较》。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分