IP Library Granted Patent US 8,522,001
Granted Patent B1
US 8,522,001 · App. 13/555,926 · Granted Aug 27, 2013

Fast restart on 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,522,001
App. No.
13/555,926
Granted
Aug 27, 2013
Kind
B1
Abstract

Media, methods, and computer systems are provided for performing a quick restart of applications in a virtual machine of the computer system. The virtual machine is configured with a critical object array that identifies the critical applications. In response to a quick restart request, the garbage collector operates in a quick restart mode to remove all objects for each application that is not in critical object array.

Claims (30)

1. A computer-implemented method to perform a quick restart in a virtual machine executing on a computing device, the method comprising:

loading, by a virtual machine of the computing device, one or more applications into a memory of the computing device, wherein the virtual machine includes two garbage collectors: a quick restart garbage collector and a normal garbage collector that execute in parallel;

reading, by the computing device, a deployment descriptor associated with each application to determine whether the application is a critical object;

updating, by the computing device, a critical object reference array with a memory address of each application loaded; and

removing, by the quick restart garbage collector of the computing device, each application from memory except applications identified in the critical object array, in response to a quick restart request.

2. The method of claim 1 , wherein the device is a wireless device.

3. The method of claim 1 , wherein the one or more applications are one of: game applications, weather application, news applications, phone applications, image applications, and static applications.

4. The method of claim 3 , wherein the deployment descriptor of the phone application identifies the phone application as a critical object.

5. The method of claim 1 , wherein the deployment descriptor is an attribute of the application.

6. The method of claim 1 , wherein the deployment descriptor is a separate file associated with the application.

7. The method of claim 1 , wherein the application and deployment descriptor are digitally signed.

8. The method of claim 1 , wherein the critical object reference array is accessible by both garbage collectors.

9. The method of claim 1 , wherein the garbage collectors frees memory for the applications.

10. The method of claim 9 , wherein at least one of the garbage collectors return the VM to a start state.

11. The method of claim 10 , wherein the quick restart garbage collector collects the objects for applications not in the critical object reference array and the normal mode garbage collector collects objects that lack handles from one or more applications.

12. One or more non-transitory computer-readable media with computer-executable instructions embodied thereon for performing a method to quick restart a virtual machine, the method comprising:

loading, by a virtual machine, one or more applications into a memory of the computing device, wherein the virtual machine includes two garbage collectors: a quick restart garbage collector and a normal garbage collector that execute in parallel;

reading a deployment descriptor associated with each application to determine whether the application is a critical object;

updating a critical object reference array with a memory address of each application loaded; and

removing, by the quick restart garbage collector, each application from memory except applications identified in the critical object array, in response to a quick restart request.

13. The media of claim 12 , further comprising an application object array having an address for each object loaded in memory and a tag for each object that indicates whether an application is handling the object.

14. The media of claim 13 , wherein the critical object reference array is accessible by the quick restart garbage collector and the application object array is accessible by the normal garbage collector.

15. The media of claim 14 , wherein the normal garbage collector frees memory by removing each object that is not tagged to indicate that an application is handling the object.

16. The media of claim 14 , wherein the quick start garbage collector collects all objects associated with applications not in the critical object reference.

17. The media of claim 14 , wherein the quick start garbage collector and normal garbage collector execute in parallel and the quick start garbage collector updates the application object array.

18. A computer system configured to perform quick restart, the computer system comprising:

an application framework configured to host a number of applications, wherein each application is associated with a deployment descriptor that specifies whether an application is a critical application; and

a virtual machine configured with two garbage collectors and a loader, the loader loads each application into memory, and the two garbage collectors include a normal garbage collector that is configured to clean memory and a quick start garbage collector that performs a quick restart by collecting objects associated with applications not identified as critical applications in response to a quick restart request.

19. The computer system of claim 18 , wherein the quick restart is requested automatically or by a user of the computer system.

20. The computer system of claim 19 , wherein the quick restart request is generated automatically based on rules configured for the computer system to prevent memory leakage.

Assignments (6)
RELEASE OF SECURITY INTEREST Recorded Aug 23, 2022
From: DEUTSCHE BANK TRUST COMPANY AMERICAS
To: IBSV LLC; LAYER3 TV, LLC; PUSHSPRING, LLC; T-MOBILE CENTRAL LLC; T-MOBILE USA, INC.; ASSURANCE WIRELESS USA, L.P.; BOOST WORLDWIDE, LLC; CLEARWIRE COMMUNICATIONS LLC; CLEARWIRE IP HOLDINGS LLC; SPRINTCOM LLC; SPRINT COMMUNICATIONS COMPANY L.P.; SPRINT INTERNATIONAL INCORPORATED; SPRINT SPECTRUM LLC
Reel/Frame 062595/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 4, 2021
From: SPRINT COMMUNICATIONS COMPANY L.P.
To: T-MOBILE INNOVATIONS LLC
Reel/Frame 055604/0001 →
TERMINATION AND RELEASE OF FIRST PRIORITY AND JUNIOR PRIORITY SECURITY INTEREST IN PATENT RIGHTS Recorded Apr 2, 2020
From: DEUTSCHE BANK TRUST COMPANY AMERICAS
To: SPRINT COMMUNICATIONS COMPANY L.P.
Reel/Frame 052969/0475 →
SECURITY AGREEMENT Recorded Apr 2, 2020
From: T-MOBILE USA, INC.; ISBV LLC; T-MOBILE CENTRAL LLC; LAYER3 TV, INC.; PUSHSPRING, INC.; BOOST WORLDWIDE, LLC; CLEARWIRE COMMUNICATIONS LLC; CLEARWIRE IP HOLDINGS LLC; CLEARWIRE LEGACY LLC; SPRINT COMMUNICATIONS COMPANY L.P.; SPRINT INTERNATIONAL INCORPORATED; SPRINT SPECTRUM L.P.; ASSURANCE WIRELESS USA, L.P.
To: DEUTSCHE BANK TRUST COMPANY AMERICAS
Reel/Frame 053182/0001 →
GRANT OF FIRST PRIORITY AND JUNIOR PRIORITY SECURITY INTEREST IN PATENT RIGHTS Recorded Mar 6, 2017
From: SPRINT COMMUNICATIONS COMPANY L.P.
To: DEUTSCHE BANK TRUST COMPANY AMERICAS
Reel/Frame 041895/0210 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 24, 2012
From: ANNAN, BRANDON CHRISTOPHER; BURCHAM, ROBERT
To: SPRINT COMMUNICATIONS COMPANY L.P.
Reel/Frame 028622/0909 →