IP Library Granted Patent US 8,875,160
Granted Patent B2
US 8,875,160 · App. 13/345,031 · Granted Oct 28, 2014

Dynamic application migration

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,875,160
App. No.
13/345,031
Granted
Oct 28, 2014
Kind
B2
Abstract

A library operating system is employed in conjunction with an application in a virtual environment to facilitate dynamic application migration. An application executing in a virtual environment with a library operating system on a first machine can be suspended, and application state can be captured. Subsequently, the state can be restored and execution resumed on the first machine or a second machine.

Claims (32)

1. A method, comprising:

employing at least one processor configured to execute computer-executable instructions stored in memory to perform the following acts with one or more library operating system components:

suspending execution of an application executing in a virtual environment with a library operating system on a first machine; and

capturing state of the application.

2. The method of claim 1 further comprising transmitting the state from the first machine to a second machine.

3. The method of claim 2 , transmitting the state from the first machine to a second machine proximate to a user.

4. The method of claim 2 , transmitting the state from a first power-constrained machine to a second machine.

5. The method of claim 1 further comprising saving the state to a persistent store.

6. The method of claim 5 further comprising resuming execution of the application.

7. The method of claim 1 further comprising:

restoring the state of the application on the first machine; and

resuming execution of the application.

8. The method of claim 1 , capturing the state from inside the virtual environment.

9. The method of claim 1 , capturing the state comprises capturing a difference in the state since loading of the application.

10. The method of claim 1 further comprises initiating the suspending execution and the capturing state upon a predetermined period of user inactivity on the first machine, saving the state to a persistent store, and powering down the first machine.

11. The method of claim 1 further comprises initiating the suspending execution and the capturing state prior to an upgrade to hardware or software on the first machine.

12. The method of claim 11 further comprises restoring the application on the first machine and resuming execution of the application after the first machine is restarted.

13. A system, comprising:

a processor coupled to a memory, the processor configured to execute the following computer-executable library operating system components stored in the memory:

a first component configured to suspend execution of an application executing within a virtual environment with a library operating system on first machine; and

a second component configured to capture application state.

14. The system of claim 13 further comprises a third component configured to make the state available to a second machine.

15. The system of claim 14 , the third component is configured to save the state to a data store accessible by the second machine.

16. The system of claim 13 further comprises:

a third component configured to restore the state of the application; and

a fourth component configured to resume execution of the application.

17. The system of claim 13 , the first component and the second component form part of a library operating system interface configured to enable interaction between the library operating system and a host operating system.

18. A method, comprising:

employing at least one processor configured to execute computer-executable instructions stored in memory to perform the following acts with one or more library operating system components:

restoring state of an application on a first machine within a virtual environment including an library operating system; and

resuming execution of the application within the virtual environment on the first machine.

19. The method of claim 18 further comprises restoring the state and resuming execution of the application from within the virtual environment utilizing a library operating system interface configured to enable interaction between the library operating system and a host operating system.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 9, 2014
From: MICROSOFT CORPORATION
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 034544/0541 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 6, 2012
From: HUNT, GALEN C.; OLINSKY, REUBEN R.; ANDERSON, ADAM B.; MAYFIELD, PAUL G.; STREET, WILLIAM; YOUNG, RUSSELL T.; BOND, BARRY; BAUMANN, ANDREW A.
To: MICROSOFT CORPORATION
Reel/Frame 027808/0909 →