There has been a lot going on. I've been trying out CTP 2011 “Quebec” from Microsoft, its basically Windows 7 Embedded. Now I know how various OEMs have been able to demo Windows 7 on all the netbooks that suddenly popped up. Consider the Windows 7 Embedded CTP to be like a "live-DVD" type of installation tool and you'll have the basic idea. If you take out pieces of Win7 that you don't need or want, you can lighten the OS load considerably. The smallest image with some networking I was able to make was about 500 MB. More on that later.
Win 7 Embedded is an oxymoron like jumbo shrimp. The OS is so freaking fat that it really doesn't make much if any sense to use it as an “embedded” operating system. As a touch screen enabled bistro table “information appliance” yeah, I'll buy that idea. Something to put inside a handheld or portable device? No and no way. Putting it in netbooks with Intel Atoms, or Via C7's maybe, they'd be slow. Windows XP though would be a better choice, and Win XP Embedded even better.
I suspect that a large amount of the fat in Win 7 comes from supporting old, really OLD applications. As an example I found edlin.exe in the system32 directory. That in itself was funny since the original edlin was a 16 bit LINE editor in MSDOS. It pre-dates edit.exe, another MSDOS editor, also in the system32 directory. Adding notepad.exe and write.exe makes 4 text editors in one folder. Is that really necessary?.
(Before you jump me, yes I know edlin.exe is still in XP Pro etc. When was the last time you HAD to use edlin? Did you really want to?)
There are runtime packages for C, C+, C++, VB5 and VB6, old MFC etc some of them pre-date Win95. ODBC database connectors for Access 95/97 databases, dBase3, and Paradox. Support for OS2, its limited but there.
Iexpress.exe, an application-installer-packager from the Windows 3.1 era also has an system32 “update”.
Most of the Win7 fat though is semi-hidden in plain-sight. Portions of the operating system have to be written in such a way to support either the old applications directly or through the application compatibility add-ons Microsoft has patched onto the various versions of Windows. Ntvdm and wow (Windows on Windows) are examples of application patching, hosting or shims embedded into Windows. I appreciate the fact that Microsoft wants to support everything they have ever released (except maybe MS Bob!) but come on, can't that stuff be supported in a download and only on the users' systems that need it?
Since Microsoft has stopped supporting MSDOS, Win 3.1 & 3.11, and WIn9X directly, why continue to support them in the new operating systems?
Hook Application Compatibility into Windows Update and use that to download the appropriate packages to support the old stuff the user has to continue using. There already is a side-by-side mechanism setup for the DLL hell of previous Windows NT versions. Something similar can be done for the old stuff, especially the 16 bit stuff.
How about MS making their Virtual PC software into something that does the legacy support? Its an extension of the idea of Virtual XP Pro stuff going to be done in WIn7.
Think of all the plug-ins that users have to download when they go web-surfing all over the Internet. Its not like the users don't already download most of the junk on their computers already.
Most of the people I have had to fix their home computers don't make back-ups and lose their installation disks so when they go out and buy the latest version of Windows Whatever, they end up buying new software anyway. This new software seldom needs MSDOS and 16bit Windows support. So why leave it in the OS as part of the piles of detritus that hardly ever gets executed?
If you want another argument to remove this un-needed dross, think of system security. All of this old compatibility software sitting on the system has a very large and exposed surface to malware writers. At present most of the compatibility software hasn't been used much to attack the host 32 bit system but its an attack vector waiting to happen. If the software wasn't there reliably on every Windows system that would be one less way to hack into or around system security. In other words, the 16 bit legacy software is not on the system UNLESS the user downloads a compatibility package, until then it wouldn't present itself as such a tempting target for future malware. If the malware guys can't count on it being there for use then its not a viable means of attack.