Patent ID: 7673308

Claim:
A computing machine having a computing architecture, comprising: a base operating system (OS) installed to the computing machine, the base OS having a base OS file system and a base OS registry; at least one virtual OS environment within the base OS, the virtual OS environment having a virtual OS file system and a virtual OS registry which are independent of the base OS file system and the base OS registry, wherein a dynamic link library (DLL) is injected into an application running under the virtual OS environment, the DLL being programmed to determine that the application should be run under the virtual OS environment instead of the base OS; call a function of the injected DLL rather than calling an API of the base OS; modify at least one parameter from a calling function of the application to direct the at least one parameter to a location of the virtual OS environment; after modifying the at least one parameter, call the API of the base OS with the at least one modified parameter; receive information from the API of the base OS; modify the information from the API of the base OS to convert the information back from a virtual OS environment location; return the information to the calling function of the application.