"); //-->
.NET MF是微软最新推出的嵌入式平台、专门用于处理能力和存储能力都更加有限的设备。既然微软已经拥有.NET Compact Framework(简称.NET CF),为什么还要再提供.NET MF呢?设备的限制是一个很重要的原因,.NET CF毕竟还是要求设备有比较强的处理和存储能力。两者重要的一个区别在于,.NET CF需要有Windows CE系列OS的支持才能得以运作,而.NET MF则提供了一个可引导的运行时环境。
既然.NET MF是可引导的,那么它实际上也相当于一个带有运行时环境的操作系统。那么,它又和Windows CE、Windows XP Embedded操作系统有哪些区别呢?下面的表格对比了几种平台的区别。
.NET Micro Framework
Windows CE
Windows XPe
Example Devices
Sensor Nodes, Aux displays, Health Monitoring, Remote Controls, Robotics
GPS Handhelds, PDAs,
Automotive, Set Top Boxes
Thin Clients, ATMs, Kiosks
Device Features
Connected, Small, Wearable, Graphical UI
Connected, Graphical UI, Server, Browser, RAS, DirectX
PCclass performance,
PC networking
Footprint
250-500KB managed code
Full featured
300KB+ without managed code
12MB with managed code
40MB + Depending on features
Power
Very low power
Low power
Mains power
CPU
ARM7, ARM9, No MMU
X86, MIPS, SH4, ARM,
with MMU
X86
Real-time
Not Real-time
Hard Real-time
Real-time capable through 3rd party extensions
Managed vs. Native Code
Managed via .NET Micro Framework,
native code through interop only.
Supports both,
managed code requires .NET Compact Framework
Supports both, managed code
requires .NET Framework
表1:各种嵌入式平台对比(资料来源:http://msdn2.microsoft.com/en-us/embedded/bb278106.aspx)
从上表可以看出,无论是资源占用还是耗电,.NET MF都要优于另外两种OS。但是,我们也看到了,在实时性方面,.NET MF并不是一款实时的运行时环境。这可能需要我们注意的一个重要方面。
在工业应用中,实时性往往是评判一个嵌入式系统的重要因素,这就意味着,.NET MF并不适用于重要的控制领域。不过,一般工业用系统都不会面临硬件过分有限的困境,完全可以使用WinCE或XPe作为基础OS。
反观民用领域,嵌入式应用正在逐渐渗透人们的生活。而当面对普通消费者时,评判一个嵌入式系统的重要标准――AndersLiu认为――就应该是:低成本。这包括两个方面,一是低的造价(软硬件成本,价格),另外一方面就是易用(这可以理解为学习成本和时间成本)。毕竟老百姓买不起和机床一样价格的洗衣机,也不希望像操作机床那样操作微波炉。
因此,民用嵌入式设备往往通过较低的硬件配置来降低价格,并通过适量(通常比较少)的按键和显示内容来降低使用复杂度。而这一切,都是.NET MF得以大显身手的地方。
可以看出,微软关于.NET MF的定位还是相当明确的――面向民用低成本嵌入式市场。下图是一两年前流行过一阵的新闻图片,传闻Gates腕上的SmartWatch中安装的,就是.NET MF的原型。
*博客内容为网友个人发布,仅代表博主个人观点,如有侵权请联系工作人员删除。