Windows Embedded Compact
Windows CE is an operating system line from Microsoft and is intended for embedded systems, thin clients and handhelds. The operating system is not based on any other version of Windows and is not a "scaled down version".
The graphical user interface can, depending on the manufacturer's composition, resemble that of Windows NT or be adapted to small screens and the intended use. A Win32 API is available on both platforms, so theoretically it would be possible to develop source code for both at the same time. In reality, however, this is usually not so easy: Although Windows CE contains a Win32-based application programming interface (API), there are profound differences that make porting x86 Windows software in reality usually very time-consuming.
Nk.exe
is the kernel of Windows CE, which was developed from scratch completely independent of Windows NT. Windows CE is not based on any of the other Windows variants (9x- or NT-based) and is not a "scaled-down version" of them. In the meantime, the operating system supported about a dozen processor architectures.
In contrast to DOS- or NT-based Windows systems, Windows CE was developed with real-time capability in mind. However, the real-time properties depend on a variety of factors that mean that real-time capability is not unquestionably present in practice. These factors include the characteristics of the target architecture, hardware and driver support, and most importantly, the difficulty of verifying real-time capability. Real-time capability has only been verified for a very strongly limited number of platforms under certain conditions, in part using heuristic methods, so that it is not possible to speak of general real-time capability in the context of Windows CE.
The letters "CE" are not an abbreviation, but an indication of a variety of design principles such as compactness, compatibility, and efficiency. With version 6.0, Microsoft expanded the name to Windows Embedded CE, and with version 7, the system was renamed Windows Embedded Compact to fit consistently into Microsoft's Windows Embedded line of operating systems for embedded systems.
Another CE rebranding was marketed as Microsoft Windows Mobile starting in 2002. In 2010, a CE variant with a special user interface was called Windows Phone 7. Also Windows Automotive is another name for Windows CE thought up by the marketing department.
Markets
Although Windows CE's focus on industrial applications is obvious because of its design as a real-time operating system, the public tends to perceive it as an operating system for mobile devices. It is also in this mass market that Microsoft's launch advertising was most intense.
Programmable logic controllers based on Windows CE are available from Beckhoff Automation and Siemens, for example.
Thin clients with Windows CE have been around since 1998.
Operating System
Windows CE was developed specifically for use in small and microcomputers, in particular for industrial, automotive and mobile devices. It is the basis for other operating systems for embedded systems, for example Pocket PC or Windows Mobile. These systems are specializations and extensions of Windows CE and are therefore not to be equated with it.
There is no single version of Windows CE. Windows CE can run on different platforms with different features. For this purpose, a developer takes the Microsoft platform builder and puts together his individual operating system: with or without graphical interface, command line, with Bluetooth support, etc. The license costs per delivered device with Windows CE vary accordingly between 3 and 16 dollars. The tools ("Embedded Visual Tools") and SDKs required for the development of applications for the various Windows CE or Windows Mobile platforms were provided by Microsoft free of charge until the CE version of 2002. A much more comprehensive development environment for which a fee is charged is Microsoft Visual Studio.
Variants
Windows Mobile for PocketPC, formerly "Microsoft Pocket PC", extends the functionality of CE with typical applications for pocket computers such as appointment calendar or address management. The user interface is based on that of Windows, but has been specially adapted for use on pocket computers.
Windows Mobile for PocketPC Phone Edition is a variant that supports a telephony module (like GSM or 3G/UMTS) integrated in the PDA. So there is additionally a reception display, the phone application, an SMS/MMS extension for the e-mail application (which communicates via Bluetooth or IrDA on normal PocketPCs) and various additional interfaces.
Windows Mobile for Smartphones, formerly "Windows Smartphone", is the CE variant for mobile phones. In contrast to Windows Mobile for PocketPC Phone Edition, the devices equipped with this system do not have a touchscreen, usually have a smaller display and a numeric keypad. So they resemble a usual mobile phone more than a PDA.
Although the name of the operating system is now (almost) the same, there are significant differences between Windows Mobile for PocketPC (Phone Edition) and Windows Mobile for Smartphones. As a result, most programs written for the operating system variant for Pocket PCs do not run on smartphones and vice versa. However, Microsoft is committed to slowly merging the systems again. In Windows Mobile 5, for example, there are the soft keys known from the smartphones (two keys with a function shown in the display) and the option to only run signed programs or to warn against running unsigned applications.