The first embedded release of Windows CE shipped in 1998 (the Embedded Tool Kit, or ETK), at every embedded conference since then we talk about Windows CE as being a small footprint, hard real-time, componentized operating system. The CE6 kernel only build is around 350KB, obviously the operating system image size increases with the addition of components to the core operating system. A build of Windows CE that includes the “Standard Shell”, Internet Explorer, .NET Compact Framework, Media Player, and even adding Solitaire for good measure would get you an operating system in the 20MB range. For Windows Embedded Standard (Windows XP Embedded) an average operating system image size is ~300MB.
Devices can fall into one of two categories, “open” where the end user can add media, games, applications, maps, POI data, and more, in these devices there is typically additional storage available either shared with the o/s image, or potentially external media (USB stick, SD card etc…) – Examples of opens device would be Windows Mobile (some devices ship with on-board flash, others with optional SD storage) or Apple iPhone (where the base operating system image size is 500MB and the device ships with 8GB ro 16GB flash) – And then there’s “closed” devices that ship with a pre-baked operating system image and no options for installation of new applications, examples here would be a real-time controller, ultrasound machine, gaming device (casino).
So, here’s the question to you… What is an acceptable operating system image size?