Patent ID: 7788665

Claim:
A computing system comprising: a resource for providing a resource service; and a computing device having first and second virtual machines (VMs) instantiated on the computing device, each VM for hosting an instance of an operating system upon which one or more applications may be instantiated, the first VM initially being communicatively coupled to the resource and the resource being initially assigned to the first VM such that the first VM initially owns the resource and the service provided thereby, the first VM being a software construct on the computing device that can be saved and migrated from a first platform to a second platform, the first VM including: a resource stack corresponding to and accessing the resource according to access requests sent by way of such resource stack; a first port communicatively coupled to the resource; a second port communicatively coupled to a communications medium; and a port redirector communicatively coupled to the resource stack, the first port and the second port and forwarding each access request from the resource stack to be queued at one of the first port and the second port, the port redirector forwarding each access request from the resource stack to be queued at the first port until the first VM is directed to be saved or migrated, each access request at the first port being further forwarded in turn to the resource to be acted upon by such resource, the port redirector forwarding each access request from the resource stack to the second port upon the first VM being directed to be saved or migrated and thereafter, each access request at the second port being further forwarded in turn only after the resource has acted upon all access requests queued at the first port and thereafter has been removed from being owned by the first VM, the second VM subsequently being communicatively coupled to the resource and the resource being subsequently assigned to the second VM after the resource is removed from the first VM such that the second VM subsequently owns the resource and the service provided thereby, the second VM as owner of the resource being communicatively coupled to the second port of the first VM by way of the communications medium, each access request at the second port being further forwarded in turn to the second VM by way of the communications medium and then further forwarded in turn to the resource by way of the second VM to be acted upon by such resource, whereby all access requests from the resource stack of the first VM are acted upon by the resource in turn even after the resource is removed from the first VM and assigned to the second VM and the save or migrate can thereafter be completed.