| Pocket PC, Windows Mobile and Windows CE
Understanding Windows CE "Platforms"
There is often a bit of confusion in the Windows embedded world about the difference between Pocket PC, Windows Mobile and Windows CE.
The content of this entry is accurate but may be dated. You may find more details about the latest releases of PocketPC, Windows Mobile, SmartPhone at the Wikipedia Windows Mobile entry. Wikipedia also links to a helpful Windows CE timeline.
Windows CE is the core Operating System. It has gone through several versions since inception, but the versions that ADS has built for products are 2.11, 2.12, 3.0, 4.0 and 4.1.
Starting with version 4.0, Microsoft began calling it CE.NET, so both version 4.0 and 4.1 are considered to be CE.NET.
The "Platform" Concept
The confusion lies in the concept of a Platform. A platform is simply a custom implementation of Windows CE based on an adaptation kit from Microsoft, and is typically provided only to large-scale hardware manufacturers like HP, Compaq, Sony and the like. The Pocket PC, for example, must be purchased directly from Microsoft and has large volume and time commitments to get consideration (usually more than 25,000 devices per year for at least 3 years).
A device running one of these Platforms may have a UI that looks significantly different than a device running the core OS, and many platforms add specific features and applications not available through the core OS.
Some platforms and their core OSes are listed in the table below. As you can see the Pocket PC and Pocket PC 2002 are both based on Windows CE 3.0. There (currently) is no Pocket PC platform based on CE.NET.
The ADS Platform
For simplicity, ADS's CE 3.0 products use the HPC2000 SDK for development, though the ADS products are not actually HPC2000 devices. The difference is that true HPC 2000 devices also include applications like Pocket Excel, Pocket Word and a UI for Pocket Access.
Applications written for a specific platform may or may not run on a device with just the core OS. For example a Pocket PC application will not run on a Windows CE 3.0 device if the application uses any of the Pocket PC Platform-specific APIs or controls.
.NET Adds Some Confusion
To add to the confusion, Microsoft has released the .NET compact framework (.NETcf). This is a set of runtimes that allow a device to run managed code. The .NETcf does not require CE.NET to run, in fact it is supported on any Pocket PC (so CE 3.0) and any CE 4.1 device, but is not supported on CE 4.0 (which is CE.NET) or any CE 3.0 device that is not a Pocket PC.
Edited by akidder 6-Feb-2003: Add section headings.
Edited by akider 24-May-2006: Add Wikipedia content update. Add Windows Mobile. Update subject from "Comparing and definingCE 3.0, Pocket PC and CE.NET" to "Pocket PC, Windows Mobile and Windows CE"