IP Library Granted Patent US 8,910,163
Granted Patent B1
US 8,910,163 · App. 13/776,829 · Granted Dec 9, 2014

Seamless migration of non-native application into a virtual machine

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,910,163
App. No.
13/776,829
Granted
Dec 9, 2014
Kind
B1
Abstract

A method, system and computer program product for implementing a first Virtual Machine (VM) and a first guest OS in the VM, on a computing system that has a host OS and a host desktop. The first VM has a non-native application associated with the first VM and the first guest OS; means for replacing the first guest OS in the first VM with a different guest OS; a second VM and a second guest OS in the second VM running on the processor; upon a user attempting to launch the non-native application, means for associating the non-native application with the second VM; and means for determining compatibility of the non-native application with the second guest OS; The non-native application is launched inside the second VM.

Claims (54)

1. A method for managing non-native applications on a computer having a processor and a memory, the method comprising:

launching a first Virtual Machine (VM) and a first guest operating system (OS) in the VM, on a computing system that has a host OS and a host desktop,

wherein the first VM has a non-native application associated with the first guest OS;

replacing the first guest OS in the first VM with a different guest OS;

upon a user attempting to launch the non-native application, associating the non-native application in the first VM with a second VM;

launching the second VM and a second guest OS in the second VM;

determining compatibility of the non-native application with the second guest OS; and

launching the non-native application inside the second VM.

2. The method of claim 1 , further comprising configuring the non-native application for compatibility with the second VM.

3. The method of claim 2 , wherein the configuring step includes modifying registry settings.

4. The method of claim 2 , wherein the configuring step includes modifying driver settings.

5. The method of claim 2 , wherein the configuring step includes setting up an emulation environment of required hardware.

6. The method of claim 1 , wherein the second guest OS is the same version of the operating system as the first guest OS.

7. The method of claim 1 , wherein the different guest OS is a later version of the first guest OS.

8. A non-transitory computer-useable storage medium having computer code stored thereon for implementing the steps of claim 1 .

9. A system for managing non-native applications comprising:

a processor;

a memory coupled to the processor;

computer code loaded into the memory for implementing the following:

a first Virtual Machine (VM) and a first guest OS in the VM, on a computing system that has a host OS and a host desktop, wherein the first VM has a non-native application associated with the first VM and the first guest OS;

means for replacing the first guest OS in the first VM with a different guest OS;

a second VM and a second guest OS in the second VM running on the processor;

upon a user attempting to launch the non-native application, means for associating the non-native application with the second VM; and

means for determining compatibility of the non-native application with the second guest OS;

wherein the non-native application is launched inside the second VM.

10. The system of claim 9 , wherein the non-native application is automatically configured for compatibility with the second VM.

11. The system of claim 10 , wherein the configuring includes modifying registry settings.

12. The system of claim 10 , wherein the configuring includes modifying driver settings.

13. The system of claim 10 , wherein the configuring includes setting up an emulation environment of required hardware.

14. The system of claim 9 , wherein the second guest OS is the same version of the operating system as the first guest OS.

15. The system of claim 9 , wherein the different guest OS is a later version of the first guest OS.

16. A method for managing non-native applications on a computer having a processor and a memory, the method comprising:

downloading an executable file into a first Virtual Machine (VM) having a first guest operating system (OS), on a computing system that has a host OS and a host desktop,

determining that a non-native application corresponding to the executable file is incompatible with the first guest OS of the first VM;

upon a user attempting to launch the non-native application, associating the non-native application in the first VM with a second VM;

launching the second VM and a second guest OS in the second VM;

determining compatibility of the non-native application with the second guest OS; and

launching the non-native application inside the second VM.

17. A non-transitory computer-useable storage medium containing code for performing the steps of claim 16 .

18. A method for managing non-native applications on a computer having a processor and a memory, the method comprising:

launching a Virtual Machine (VM) and a guest operating system (OS) in the VM, on a computing system that has a host OS and a host desktop,

wherein the VM has a non-native browser associated with the first guest OS;

upon a user attempting to launch the non-native browser, launching a native browser under the host OS and copying objects displayed in the non-native browser in the VM to the native browser;

displaying the objects from the non-native browser in the native browser such that a native look-and-feel of the native browser is preserved,

wherein a switch from the non-native browser to the native browser appears seamless to the user.

19. A system for managing non-native applications on a computer having a processor and a memory, the system comprising:

a processor;

a memory coupled to the processor;

computer code loaded into the memory for implementing the following:

launching a Virtual Machine (VM) and a guest operating system (OS) in the VM, on a computing system that has a host OS and a host desktop,

wherein the VM has a non-native browser associated with the first guest OS;

upon a user attempting to launch the non-native browser, launching a native browser under the host OS and copying objects displayed in the non-native browser in the VM to the native browser;

displaying the objects from the non-native browser in the native browser such that a native look-and-feel of the native browser is preserved,

wherein a switch from the non-native browser to the native browser appears seamless to the user.

Assignments (4)
RELEASE OF SECURITY INTEREST Recorded Jul 18, 2019
From: UBS AG, STAMFORD BRANCH, AS ADMINISTRATIVE AND COLLATERAL AGENT
To: COREL CORPORATION; CLEARSLIDE, INC.; PARALLELS INTERNATIONAL GMBH
Reel/Frame 049787/0073 →
RELEASE OF SECURITY INTEREST RECORDED AT : REEL 047973 FRAME 0797 Recorded Jul 17, 2019
From: UBS AG, STAMFORD BRANCH
To: PARALLELS INTERNATIONAL GMBH
Reel/Frame 049773/0590 →
SECURITY INTEREST Recorded Dec 21, 2018
From: PARALLELS INTERNATIONAL GMBH
To: UBS AG, STAMFORD BRANCH
Reel/Frame 047973/0797 →
MERGER Recorded Jan 30, 2018
From: PARALLELS IP HOLDINGS GMBH
To: PARALLELS INTERNATIONAL GMBH
Reel/Frame 045193/0679 →