Operating Systems
-
Big Question, but I'll give you a very brief rundown: Windows 95/98/ME: Ever evolving shell interface that still fundamentally sits on the DOS architecture (although it doesn't use very much DOS anymore). This is the "legacy" architecture for Microsoft, and accounts for the majority of its installs. Fundamentally runs on ASCII internally, and uses FAT disk technology. Windows NT/2000: Next generation architecture. Built on "microkernel" design intended to be portable to other architectures (now effectively abandoned), to be capable of utilizing multiple processors in a machine (SMP), adds rich security model (which I can barely understand sometimes :)), uses UNICODE internally (but also offers an ASCII model), and offers much more advanced NTFS disk technology. Much more robust, fault tolerant and secure. Windows CE: My feeling about CE is that it was developed using a subset of the NT architecture. It is designed for instant on, handheld and embedded devices. It is UNICODE only, which means that there are sometimes porting issues moving older code to the platform. CE separates the OS into at least two distinct portions, Kernel and Interface, so that devices that don't require an interface don't need to bring that code along. Fundamentally a very trimmed down version of the Win32 API shared by all Microsoft platforms, focused on minimal resource requirements. Please don't take this comments as anything other than an off-the-cuff summary, for a full description, please see the docs from Microsoft.