- .NET Micro Framework
The .NET Micro Framework is a .NET platform for extremely resource-constrained devices. It includes a small version of the .NET CLR and supports development in C# and debugging (in an emulator or on hardware), both using
Microsoft Visual Studio . It also features a subset of the .NET base class libraries (about 70 classes with about 420 methods), aGUI framework loosely based onWindows Presentation Foundation , and additional libraries specific to embedded applications.The .NET Micro Framework aims to make embedded development easier, faster, and less expensive by giving embedded developers access to the modern technologies and tools used by desktop application developers. Additionally, it allows desktop .NET developers to use their skills in the embedded world, enlarging the pool of qualified embedded developers.
According to Microsoft, the unique features of the .NET Micro Framework (relative to other .NET platforms) are:
* A memory footprint of about 300 KB; for comparison, the next smallest .NET implementation, the
.NET Compact Framework running onWindows CE , needs about 12 MB
* Can run directly "on the metal" without an operating system; running on an OS is also possible
* Supports common embedded peripherals and interconnects, includingflash memory ,EEPROM ,GPIO ,I2C , SPI,USB
* Optimized for energy-efficiency in battery-powered devices
* Does not require amemory management unit
* Provides multithreading support even when running on single-threaded operating systems
* Ahardware abstraction layer allows porting to additional architectures
* A managed device driver model allows drivers for many devices to be written in C#
* Execution constraints to catch device lockups and crashes
* Transparent support for storing objects in non-volatile memoryDue to the constraints under which it operates, the .NET Micro Framework does have some limitations beyond those imposed by its slimmed-down libraries. For example, the platform does not support symmetric multiprocessing, multi-dimensional arrays, machine-dependent types, or unsafe instructions. The CLR is an interpreter rather than a just-in-time compiler, and uses a simpler mark-and-sweep garbage collector rather than a generational approach. Interoperation between managed and native code currently has a number of limitations. The .NET Micro Framework does not support any .NET languages other than C# at this time.
The .NET Micro Framework is currently supported on
ARM architecture processors (including ARM7 and ARM9) and onAnalog Devices Blackfin . Porting, which requires access to the .NET Micro Framework source, is performed by Microsoft and hardware partners under license from Microsoft. These partners then offer development kits and pre-built modules capable of running the framework to developers and manufacturers. Among the development kits supporting the .NET Micro Framework areFreescale 's i.MXS, Tahoe from Device Solutions and Embedded Master form GHI Electronics.Microsoft does not charge fees for developing applications using the .NET Micro Framework and makes an SDK freely available for download (however, Visual Studio Standard or better is required; the free Visual Studio Express editions cannot be used). Distributing devices that use the .NET Micro Framework does require a license, with royalties based on volume.Fact|date=March 2008
The .NET Micro Framework has its roots in Microsoft's SPOT initiative and was used in
MSN Direct products such as smart watches before being made available to third-party developers early in 2007. It is a common platform forWindows SideShow devices and is beginning to see adoption in other markets, such as home automation and sensor networks.ee also
*
Microsoft .NET
*Smart Personal Objects Technology
*DirectBand
*MSN Direct
*Windows SideShow External links
* [http://msdn2.microsoft.com/en-us/embedded/bb267253.aspx .NET Micro Framework] official site at MSDN
* [http://www.msndirect.com/ MSN Direct] official site
* [http://www.dotnetmicroframework.com Embedded Programming with the Microsoft .NET Micro Framework] book site
* [http://www.apress.com/book/view/9781590599730 Expert .NET Micro Framework] book site
* [http://www.microframework.eu/ Microsoft .NET Micro Framework Tools & Resources Website] lots of .NET MF Articles & RSS feeds
Wikimedia Foundation. 2010.