Patent ID: 8166492

Claim:
A computer-readable storage medium having computer-executable components or modules allowing compatibility between a host operating system and a guest application native to a guest operating system wherein the guest operating system and the host operating system comprise different versions of a same operating system and the host operating system is a newer version of the guest operating system, the computer-executable components or modules comprising: the host operating system, wherein the host operating system includes a host service, a host subsystem, a set of host dynamic link libraries (“DLLs”) comprising kernel mode DLL functions native to the host operating system; a set of guest DLLs comprising user mode DLL functions native to the guest operating system; a plurality of guest applications, wherein each guest application includes a call to one of the guest DLL functions; and a thunking wrapper performing thunking for the guest applications, wherein the thunking layers do not execute operating system functions of the guest operating system, the thunking wrapper including: a native thunking layer invoked to translate between the guest DLL and the host DLL when the guest applications invoke calls to the guest DLL, a subsystem thunking layer invoked to translate between the guest application and the host subsystem when the guest applications invoke calls a host subsystem function, a service thunking layer invoked to translate between the guest application and the host service when the guest applications invoke calls a host service function.