Windows 7 backwards compatibility
Windows 7 will be different. Different from previous Microsoft operating systems that all had to ensure that applications designed for older versions of Windows would also run perfectly on the newest operating system. Backwards compatibility is a great feature and gives users one less reason to worry about when updating from an old version of Windows to a newer one.
On the other hand it does have an impact on performance and size of an operating system. The biggest folder of a Windows Vista installation is not the system32 folder anymore, it’s the WinSxS folder. The WinSxS folder basically stores different versions of program libraries like dll files which are needed to ensure that an application that is requesting a library gets the correct version it is requesting.
This is on the other hand a very redundant method and there are reports on the Internet that the WinSxS folder grows out of proportion rapidly.
Microsoft’s approach in Windows 7 is different. Windows 7 will not be binary compatible to older Microsoft operating systems. This does not mean that old programs will simply not run on Windows 7 though because Microsoft will be using virtualization to ensure compatibility with older applications that have been designed for a previous Microsoft operating system.
The huge advantages of this approach are performance increases for native applications and the operating system itself and a decrease of the distribution size itself.
In Windows 7, Microsoft will break from the Windows’ norm by breaking previous API compatibility, offering new API frameworks as a native solution, and providing support for legacy frameworks (COM, ATL, .NET Framework, etc) through monolithic libraries designed to provide the functionality of all previous revisions of the modules in question. This extends/replaces the WinSxS philosophy, providing every single function, past and present, in fully comprehensive libraries. This should allow the majority of legacy applications to run perfectly, while still retaining native performance for applications compiled specifically with the Windows 7 platform in mind. It should also be possible for applications produced with previous versions of Visual Studio to be directly recompiled into native code using the new API frameworks.
source The Beta Guy

Comment by newsguy on 10 April 2008:
Ive got some news for you guys
Microsoft is developing silverlight, to cover all of the jobs that they had used to require direct x to do in the new user interface
Comment by Ared on 10 April 2008:
I hope so!!
Comment by Neil on 17 April 2008:
I hope no one listens to the person before me….. an OS in development means bad idea to buy for it untill its here…. i.e. see ‘vista compatible’ complaints everywhere. P.O.S. systems with no ram and then BAM! your computer doesnt run vista worth a …. after release. Its true this OS will probably need a required system of more than vista, but maybe not… Technology is funny like that.
So worry about prices about oooooh, summer 2010 if they are lucky.
Comment by Kay Tannee on 21 April 2008:
I hope no one listens to the guy before you, because he’s obviously just advertising. And secondly. The whole point of this article is about cutting down the footprint of windows and making it more streamlined.
Ie, making it at its core less resource intensive and less memory dependant.
Comment by Ryan Northrup on 11 May 2008:
Is this “virtualization” the same as installing a Virtual PC, or are my definitions of virtualization mixed up a bit? If my definition is right, then in order to run older applications, a user would have to dig out an older version of Windows, install it on Microsoft Virtual PC (which would presumably be included if this is the virtualization being described), and then fiddle around with ripping CD’s into .iso’s and installing all of the old software on the virtual computer.
Or, Windows could use a menu similar to that of Windows XP’s Compatibility Mode, where the user goes into Properties, selects “Compatibility”, chooses the application’s target version of Windows, clicks on “Apply”, and runs the program. If the normal DLL’s can’t support the software, then older ones are downloaded online as soon as they’re first needed.
Pingback by The Arc of Engineering : Bruce F. Webster on 22 May 2008:
[...] by not supporting binary (and to a certain extent source) backwards compatibility in Windows 7 but instead using virtualization technology (switching to a backwards-compatible OS) for older [...]
Comment by Peter on 26 June 2008:
More gimmicks I fear and not addressing the core problems which are evident within Windows Vista. They may solve the problem of speed due to a different approach to the design by ‘Virtualisation’ but no backwards compatabilty? If noone can run their current applications especially in the corporate world, Microsoft’s new baby decends rapidly into the abyss dear dear!
Comment by Jason on 30 July 2008:
I think they mean virtualization in the sense of application virtualizaion. Take a look at vmware’s thinapp as an example.
http://www.vmware.com/products/thinapp/
A way of isolating dlls on a per application basis.
I just hope we can turn it on or off instead of getting it rammed down our throat like with winSXS.