在曩昔几年里,Microsoft 为嵌入式范畴供给了 XP Embedded 和 Windows CE 两种操作体系。它们现已成为了许多设备的渠道,这些设备有PDA、智能手机、自动柜员机(ATM)和网络交换机等。Microsoft 推出的.NET Framework 把强壮、牢靠的保管代码从大型服务器扩展到了嵌入式设备。可是,仍然有许多设备由于资源约束而无法支撑这些渠道。为了呼应微型设备的商场需求,Microsoft 开发了一个叫Microsoft .NET Micro Framework. (.NET MF) 的新渠道。.NET Micro Framework 定坐落这个未开发的范畴,向微型设备供给细巧、高效的.NET 运行时的完结。这带来的优点是,开发人员将能够运用相同的保管代码,运用相同的世界级的东西,持续参加到全世界最大的开发社区。
.NET MF面向的是CPU处理才干和存储才干极端有限的设备。尽管微软具有Windows CE、Windows XP Embedded和.NET Compact Framework,能够完结绝大多数嵌入式开发,但关于更遍及的家用电器范畴(如电视、手表、洗衣机等),这些渠道仍是显得太大了些。能够幻想,给你的电冰箱装块硬盘是多么搞笑的事。而.NET MF的呈现,则标志着微软又向百姓日子迈进了一步,让全部家电都“智能”起来,现已是一个不远的梦。由于
所需求的仅仅是廉价的,ARM处理器和一些RAM、Flash存储器。
.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 |
从上表能够看出,无论是资源占用仍是耗电,.NET MF都要优于别的两种OS。可是,咱们也看到了,在实时性方面,.NET MF并不是一款实时的运行时环境。这或许需求咱们留意的一个重要方面。
在工业运用中,实时性往往是评判一个嵌入式体系的重要因素,这就意味着,.NET MF并不适用于重要的操控范畴。不过,一般工业用体系都不会面临硬件过火有限的窘境,完全能够运用WinCE或XPe作为基础OS。
反观民用范畴,嵌入式运用正在逐步浸透人们的日子。而当面临一般顾客时,评判一个嵌入式体系的重要规范——AndersLiu以为——就应该是:低本钱。这包含两个方面,一是低的造价(软硬件本钱,价格),别的一方面便是易用(这能够理解为学习本钱和时刻本钱)。究竟老百姓买不起和机床相同价格的洗衣机,也不期望像操作机床那样操作微波炉。
因而,民用嵌入式设备往往经过较低的硬件装备来下降价格,并经过适量(一般比较少)的按键和显现内容来下降运用复杂度。而这全部,都是.NET MF得以大显神通的当地。
能够看出,微软关于.NET MF的定位仍是适当清晰的——面向民用低本钱嵌入式商场。下图是一两年前盛行过一阵的新闻图片,风闻Gates腕上的SmartWatch中装置的,便是.NET MF的原型。
Figure 1: Microsoft Embeded Products
Figure 2: The Basic Architecture for .NET MicroFramework
在本年的MEDC大会中有简略地介绍了.NET Micro Framework,其时我记住是用于机器人编程大赛,其他没有什么形象。
Daniel Moth 从前对.NET Micro Framework 进行了一番介绍,列出了.NET MF 的首要特性。
现在现已有beta版的开发包了,但找不到从哪里下载,好像要经过SPOT(Smart Personal Objects Technology)约请取得开发包。没有详细看Introducing the Microsoft .NET Micro Framework Platform,有时刻再了解清楚。
别的,.NET MicroFramework 开发团队录制了一个webcast:Introduction to the .NET MicroFramework webcast,介绍了.NET MF 开发的东西和技能概貌。