views:

182

answers:

3

I often see these terms:

  • Windows CE
  • Windows Mobile Pocket PC
  • Windows Mobile Smart Phone

I know the difference between the second 2, but I am confused on the first. I thought it was the name of the Mobile OS prior to Windows Mobile 5.

But I am seeing it more often in current products. (Here is a current MS Form for developing on it. Here is a current product for creating them.)

What is it and how does it relate to the Windows Mobile lines?

+1  A: 

Windows Mobile is based on Windows CE. It is the core of the Mobile platform. Windows Mobile is layered on top of a CE base foundation - usually everything available in CE is available in Mobile, but not necessarily the opposite way around. Many embedded devices use Windows CE. Mobile provides the interface you are familiar with on PocketPC devices and Smart Phones, CE provides a start menu like on a desktop PC. They are similar operating systems with share the CE core foundation.

Jay Kramer
Not fully true. There are a *lot* of things available in CE that aren't in WinMo. WinMo includes maybe 70% of the catalog items.
ctacke
+2  A: 

I've found this timeline to be a handy guide for the squirrelly history of that/those platform(s)

Also, from the same wiki article:

Windows Mobile is best described as a subset of platforms based on a Windows CE underpinning. Currently, Pocket PC (now called Windows Mobile Classic), SmartPhone (Windows Mobile Standard), and PocketPC Phone Edition (Windows Mobile Professional) are the three main platforms under the Windows Mobile umbrella. Each platform utilizes different components of Windows CE, as well as supplemental features and applications suited for their respective devices.

Paul Sasik
+5  A: 

Windows CE is a modular OS. It is built with a tool called Platform Builder (PB).

PB has a Catalog of items that can be included in a give OS image. For example TCP/IP, the Shell, Windows Explorer, servers like FTP and Telent, the device driver manager or GWES (the catalog is quite extensive). Basically just about every part of what you think of as the OS is a component that can be included of excluded (though obviously components can have dependencies - you can't have a Shell without GWES for example). The OS image is also highly tailored for the exact hardware on which it will run. One Windows CE OS image cannot be copied to different hardware and work.

So anyone can build a Windows CE OS, and becasue of it's modular nature, there is no such thing as an "off the shelf" configuration (like XP, Vista or Windows 7). Let's call those people, for this discussion, the "customer".

Now any Customer can add their own stuff into the OS - their "secret sauce" if you will. For example look at HTC's TouchFlo UI or the Google Maps application. That was done by the customer, not the Windows CE team. Same for control panel applets, applications, etc.

So Windows Mobile really can be seen as just another Customer. They take Platform Builder and select a specific subset of the catalog items from the core OS. They then add their own stuff (the WinMo shell, notifications, POOM, etc). They then ship that to the ODM (device manufacturers like HTC).

It's a bit more complex than that because the WinMo team actually ships a tool that is like Platform Builder (though not the same) and the compiled libraries for all of their secret sauce, and it's up to the ODM to actually do the OS image creation.

So WinMo is both a subset and a superset of CE. It is a subset because it doesn't contain all of the stuff available to the OS. It is a superset because it includes stuff that doesn't ship with the core OS at all. This means that with just the Platform Builder tool you can create a CE OS, but you cannot create a WinMo OS.

ctacke
Wow! Sweet answer. That cleared it up for me. Thanks!
Vaccano