Friday, May 1, 2009

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.

No comments:

Post a Comment