Click here to learn
about this Sponsor:
Home  |  News  |  Articles  |  Polls  |  Forum  |  Directory

Keywords: Match:
How the .NET Micro Framework and Windows CE differ
by Mike Hall (Feb. 9, 2007)

Foreword: Continuing his "What's the Difference" series, Mike Hall discusses the distinctions between Windows CE 6.0 and the recently introduced .NET Micro Framework. What sets .NET Micro Framework apart from most embedded operating systems, according to Hall, is the programming model: everything is written in managed code.



.NET Micro Framework and Windows CE -- What's the Difference?

by Mike Hall


Let's start with a quick recap of the CE 6.0 features and then we can compare this baseline with the .NET Micro Framework.

CE 6.0 is a 32-bit, small footprint (~300KB for a kernel only build), hard real-time (see these two reports: Windows CE 5.0 x86; Windows CE 5.0 ARM), componentized (approximately 700 o/s components in the CE 6.0 development tool catalog) operating system that runs on ARM, SH4, MIPS, and x86 MMU-based processors. The OS exposes Win32, MFC/ATL, and managed application development (C#/VB) models.

CE 6.0 also includes a number of "desktop-like" technologies, including Web Browser, Web Server, Media Player, support for SOAP/XML Web Services, DirectX, a host of other technologies, and support for specific device categories such as Networked Projector, Networked Media Device for streaming video, photo, and audio from PC's around your home, VoIP (voice-over-IP), and more.


SPOT watches!
(Click for info)

SideShow dev kit
(Click for info)
Now, let's take a look at the .NET Micro Framework. Perhaps the most obvious devices you may have seen running the underlying NETMF bits are the MSN Direct Watches, also known as SPOT watches (Smart Personal Object Technologies), and the SideShow devices for Windows Vista Laptops. While SPOT and SideShow are two good examples of devices based on the .NET Micro Framework, there are a TON of other device categories that could also use this interesting new embedded operating system (and I use the term operating system loosely -- you will see why shortly).


Brew Java with .NET MF
(Click for info)
What really separates NETMF from other embedded offerings is the programming model. All device drivers and applications are written in managed code -- yep, you read that correctly, drivers are developed in managed code! For the most part, developers building for the .NET Micro Framework may be working with an existing hardware reference board and a pre-written board support package that is delivered in the form of a managed assembly.

There are some other major differences. The .NET Micro Framework doesn't require a Memory Management Unit (MMU), but can also run on MMU-based processors (NETMF runs on a number of ARM7 and ARM9 CPUs). NETMF doesn't have a configuration tool like Platform Builder (there are a number of OEMs that will be building NETMF capable hardware; you simply write the application in Visual Studio 2005 that is downloaded and runs on the hardware). Hardware support for a board is provided as a managed assembly that would be added as a reference to a .NET Micro Framework C# project.

A complete NETMF image is on the order of 300KB; note that this is about the size of the CE 6.0 kernel only image! Here's how the .NET Micro Framework stack looks -- notice the support for WPF on Micro Framework (very nice!):


.NET Micro Framework Architecture

Unlike CE 6.0, NETMF isn't a hard real-time embedded operating system. But developing an application that handles interrupts is a piece of cake. Hooking an interrupt is as easy as adding any other event handler in C# -- the code snippet below hooks a button on a Freescale NETMF reference board.

InterruptPort CenterButton = new InterruptPort(Pins.GPIO_PORT_B_8,
true, Port.ResistorMode.PullUp, Port.InterruptMode.InterruptEdgeBoth);
CenterButton.OnInterrupt += new GPIOInterruptEventHandler(CenterButtonPush);

And the interrupt handler is as simple as...

public static void CenterButtonPush(Cpu.Pin port, Boolean state, TimeSpan time)
{

}

Imagine if you had a reference board that had a D-Pad and an LCD panel. I wonder what interesting applications you could create.


Copyright (c) 2007 Microsoft Corp. All rights reserved. Reproduced by WindowsForDevices.com with permission. This article was originally published on the Mike Hall's Windows Embedded blog.



About the author: Mike Hall is Technical Product Manager in Microsoft's Mobile and Embedded Devices Group, on the Windows Embedded team. Among other things, he writes an extensive (and often entertaining) blog that's published on Microsoft's MSDN developer website.



Related stories:

(Click here for further information)


7 Advantages of D2D Backup
For decades, tape has been the backup medium of choice. But, now, disk-to-disk (D2D) backup is gaining in favor. Learn why you should make the move in this whitepaper.

4 Legal Reasons to Control Internet Access
The Internet is obviously a valuable resource for many organizations. However, many are exposed to legal liability concerns because they fail to control Internet access. Learn if you're safe in this white paper.

Rapidly Resolve J2EE Application Problems
Whether you are in the process of building J2EE applications or have J2EE applications already running in production, you must ensure that they deliver the expected ROI. Learn how in this white paper.

Load Testing 2.0 for Web 2.0
There are many unknowns in stress testing Web 2.0 applications. Find out how to test the performance of Web 2.0 in this white paper.

Build Better Games Online
For the game infrastructure providers, life is complex. Making money from games has become more complicated. Why? Find out in this white paper.

Building a Virtual Infrastructure from Servers to Storage
This white paper discusses the virtual storage solutions that reduce cost, increase storage utilization, and address the challenges of backing up and restoring Server environments.

Gaining Faster Wireless Connections with WiMAX
Welcome to what is quickly becoming the hyperconnected world where anything that would benefit from being connected to the network will be connected. Learn more in this white paper.

Is Your Desktop a Security Threat?
The new wave of sophisticated crimeware not only targets specific companies, but also targets desktops and laptops as backdoor entryways into those business’ operations and resources. Learn how to stay safe in this white paper.

Increasing SAN Reliability by 100 Percent
Storage area networks (SAN) are a strong part of storage plans. Learn how to increase your reliability and uptime by 100 percent in this case study.

 


Got a HOT tip?   please tell us!
Free weekly newsletter
Enter your email...
Click here for a profile of each sponsor:
PLATINUM SPONSORS
(Become a sponsor)

ADVERTISEMENT
(Advertise here)


Check out the latest Windows-powered...

mobile phones!

other cool
gadgets

HOT TOPICS
Microsoft targets PNDs with new embedded OS
Microsoft tips .NET MF 3.0 highlights
Microsoft previews Windows Embedded Standard
Microsoft offers free Windows CE 6.0 textbook
Microsoft renames embedded operating systems
Microsoft unveils Windows Mobile 6.1
New Atom models target low-cost PCs
REFERENCE GUIDES
Windows Device Showcase
Intro to Windows Embedded
Intro to Shared Source
Real-time Windows Embedded
Windows Embedded books
Join our Windows Embedded discussion forums:
Windows XP Embedded
Windows CE
Windows Mobile


Windows Embedded developer newsgroups
Windows CE
XP Embedded
PocketPC
Smartphone

Microsoft's Windows Embedded resources
Embedded dev center
Mobile dev center
Windows CE tutorials
XP Embedded tutorials
Windows Embedded seminars
Windows Embedded application categories
3rd-party partners


BREAKING NEWS

• Upated JVM supports Windows CE
• Windows Mobile 6.1 phone has GPS
• Windows CE thin client hides in wall sockets
• Portable spectrum analyzer runs Windows CE
• VoIP client gains add-ons, API
• Windows Mobile phone has dual active SIMs
• Access gives away Windows Mobile utilities
• Intel's Atom powers mini-ITX board
• Microsoft revamps Windows Mobile website
• Low-cost phone bundles IM client
• Pico-ITX board bears twins
• Microsoft details finalists in student competition
• Intrinsyc revs Windows CE-based software platform
• $300 mini-laptop runs Windows CE
• Microsoft releases server virtualization technology


MOST POPULAR (last 90 days)
Windows Mobile 6 SDKs available for download
Guide to HTC's Windows Mobile smartphone platforms
Microsoft unveils Windows Mobile 6.1
HTC announces unlocked Windows Mobile 6.1 phone
UMPC squeezes in optical drive
Running Windows Mobile 6.1 on your desktop computer
Microsoft releases Windows XP Service Pack 3
Mobile Firefox gets speedup, design tweaks
MOST POPULAR (Classics from the vault)
The Windows Mobile Phones Showcase
Windows XP Embedded USB boot
Troubleshooting Windows XPe's blue screen "Stop 0x0000007B" error
Asus reveals $190 mini notebook
HTC adds GPS to Windows Mobile Touch line
Windows Mobile VPN client plays with Cisco
Guide to HTC's Windows Mobile smartphone platforms
Customizing Windows XP Embedded thin clients
The Windows Mobile Pocket PCs Showcase

Also visit our sister sites:


Sign up for WindowsForDevices.com's...

news feed

Home  |  News  |  Articles  |  Polls  |  Forum  |  Directory  |  About  |  Contact
 

Ziff Davis Enterprise Home | Contact Us | Advertise | Link to Us | Reprints | Magazine Subscriptions | Newsletters
Tech RSS Feeds | White Papers | ROI Calculators | Tech Podcasts | Tech Video | VARs | Channel News

Baseline | Careers | Channel Insider | CIO Insight | DesktopLinux | DeviceForge | DevSource | eSeminars |
eWEEK | Enterprise Network Security | LinuxDevices | Linux Watch | Microsoft Watch | Mid-market | Networking | PDF Zone |
Publish | Security IT Hub | Strategic Partner | Web Buyer's Guide | Windows for Devices

Developer Shed | Dev Shed | ASP Free | Dev Articles | Dev Hardware | SEO Chat | Tutorialized | Scripts |
Code Walkers | Web Hosters | Dev Mechanic | Dev Archives | igrep

Use of this site is governed by our Terms of Service and Privacy Policy. Except where otherwise specified, the contents of this site are copyright © 1999-2008 Ziff Davis Enterprise Holdings Inc. All Rights Reserved. Reproduction in whole or in part in any form or medium without express written permission of Ziff Davis Enterprise is prohibited. Windows is a trademark or registered trademark of Microsoft Corporation in the United States and/or other countries and is used by WindowsForDevices under license from owner. All other marks are the property of their respective owners. WindowsForDevices is an independent publication not affiliated with Microsoft Corporation.