IP Library Granted Patent US 8,869,154
Granted Patent B1
US 8,869,154 · App. 12/748,873 · Granted Oct 21, 2014

Controlling processor usage on a computing device

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,869,154
App. No.
12/748,873
Granted
Oct 21, 2014
Kind
B1
Abstract

A method for controlling processor usage on a computing device is described. The method includes identifying targeted processes and obtaining a total processor usage for a processor on the computing device. The method also includes determining an amount of time to suspend threads within the targeted processes and suspending the threads for the determined amount of time.

Claims (42)

1. A method for controlling processor usage on a computing device, comprising:

identifying targeted processes on a computing device;

obtaining a total processor usage for a processor on the computing device;

determining, on the computing device, an amount of suspension percent time to suspend threads within the targeted processes based on one or more processor usage limits, wherein the amount of suspension percent time to suspend the threads is based on a regular processor usage limit if the total processor usage is not greater than a threshold and is based on a high processor usage limit if the total processor usage is greater than a threshold;

maintaining without suspension, on the computing device, high priority threads within the targeted processes; and

suspending, on the computing device, remaining threads for the amount of suspension percent time;

wherein determining the amount of suspension percent time to suspend the threads is based on a processor usage limit, whether the computing device is in a low-use state and whether the total processor usage is greater than a threshold.

2. The method of claim 1 , further comprising maintaining without suspension, on the computing device, threads that are associated with a user interface.

3. The method of claim 1 , further comprising obtaining a processor usage of the targeted processes.

4. The method of claim 3 , wherein the amount of suspension percent time to suspend the threads is further based on the processor usage of the targeted processes if the total processor usage is not greater than a threshold.

5. The method of claim 1 , further comprising determining, on the computing device, whether the computing device is in a low-use state.

6. The method of claim 1 , further comprising obtaining, on the computing device, a process identification of a foreground user interface.

7. The method of claim 6 , wherein determining the amount of suspension percent time to suspend the threads is further based on whether the threads are associated with the foreground user interface and whether the total processor usage is greater than a threshold.

8. The method of claim 1 , wherein the targeted processes are not associated with a foreground user interface.

9. The method of claim 8 , wherein determining the amount of suspension percent time to suspend the threads is further based on whether the total processor usage is greater than a threshold.

10. The method of claim 1 , wherein the threads comprise third-party threads.

11. A computing device that is configured for controlling processor usage on a computing device, comprising:

a processor;

memory in electronic communication with the processor;

instructions stored in the memory, the instructions being executable to:

identify targeted processes;

obtain a total processor usage for the processor;

determine an amount of suspension percent time to suspend threads within the targeted processes based on one or more processor usage limits, wherein the amount of suspension percent time to suspend the threads is based on a regular processor usage limit if the total processor usage is not greater than a threshold and is based on a high processor usage limit if the total processor usage is greater than a threshold;

maintain without suspension, on the computing device, high priority threads within the targeted processes; and

suspend remaining threads for the amount of suspension percent time;

wherein determining the amount of suspension percent time to suspend the threads is based on a processor usage limit, whether the computing device is in a low-use state and whether the total processor usage is greater than a threshold.

12. The computing device of claim 11 , wherein the instructions are further executable to maintain without suspension threads that are associated with a user interface.

13. The computing device of claim 11 , wherein the instructions are further executable to obtain a processor usage of the targeted processes.

14. The computing device of claim 13 , wherein the amount of suspension percent time to suspend the threads is further based on the processor usage of the targeted processes if the total processor usage is not greater than a threshold.

15. The computing device of claim 11 , wherein the instructions are further executable to determine whether the computing device is in a low-use state.

16. The computing device of claim 11 , wherein the instructions are further executable to obtain a process identification of a foreground user interface.

17. The computing device of claim 16 , wherein determining the amount of suspension percent time to suspend the threads is further based on whether the threads are associated with the foreground user interface and whether the total processor usage is greater than a threshold.

18. The computing device of claim 11 , wherein the targeted processes are not associated with a foreground user interface.

19. The computing device of claim 18 , wherein determining the amount of suspension percent time to suspend the threads is further based on whether the total processor usage is greater than a threshold.

20. The computing device of claim 11 , wherein the threads comprise third-party threads.

21. A non-transitory tangible computer-readable medium for controlling processor usage on a computing device comprising executable instructions for:

identifying targeted processes;

obtaining a total processor usage for the processor;

determining an amount of suspension percent time to suspend threads within the targeted processes based on one or more processor usage limits, wherein the amount of suspension percent time to suspend the threads is based on a regular processor usage limit if the total processor usage is not greater than a threshold and is based on a high processor usage limit if the total processor usage is greater than a threshold;

maintaining without suspension, on the computing device, high priority threads within the targeted processes; and

suspending remaining threads for the amount of suspension percent time;

wherein determining the amount of suspension percent time to suspend the threads is based on a processor usage limit, whether the computing device is in a low-use state and whether the total processor usage is greater than a threshold.

Assignments (23)
CORRECTIVE ASSIGNMENT TO CORRECT THE PROPERTY 14633493 WHICH WAS ENTERED INCORRECTLY AS 14633793 PREVIOUSLY RECORDED ON REEL 71176 FRAME 315. ASSIGNOR(S) HEREBY CONFIRMS THE FIRST LIEN NEWCO SECURITY AGREEMENT. Recorded Nov 10, 2025
From: PULSE SECURE, LLC; IVANTI, INC.; IVANTI US LLC; IVANTI SECURITY HOLDINGS LLC
To: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
Reel/Frame 073818/0515 →
FIRST LIEN NEWCO SECURITY AGREEMENT Recorded May 5, 2025
From: PULSE SECURE, LLC; IVANTI, INC.; IVANTI US LLC; IVANTI SECURITY HOLDINGS LLC
To: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
Reel/Frame 071176/0315 →
SECURITY INTEREST Recorded May 2, 2025
From: IVANTI, INC.
To: ALTER DOMUS (US) LLC
Reel/Frame 071164/0482 →
NOTICE OF SUCCESSION OF AGENCY FOR SECURITY INTEREST AT REEL/FRAME 054665/0873 Recorded Apr 29, 2025
From: BANK OF AMERICA, N.A., AS RESIGNING AGENT
To: ALTER DOMUS (US) LLC, AS SUCCESSOR AGENT
Reel/Frame 071123/0386 →
SECURITY INTEREST Recorded Dec 9, 2020
From: CELLSEC, INC.; PULSE SECURE, LLC; IVANTI, INC.; MOBILEIRON, INC.; IVANTI US LLC
To: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
Reel/Frame 054665/0062 →
SECURITY INTEREST Recorded Dec 9, 2020
From: CELLSEC, INC.; PULSE SECURE, LLC; INVANTI, INC.; MOBILEIRON, INC.; INVANTI US LLC
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 054665/0873 →
RELEASE OF SECURITY INTEREST : RECORDED AT REEL/FRAME - 41052/0762 Recorded Dec 1, 2020
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: CRIMSON CORPORATION
Reel/Frame 054560/0857 →
RELEASE OF SECURITY INTEREST : RECORDED AT REEL/FRAME - 41459/0387 Recorded Dec 1, 2020
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: CRIMSON CORPORATION
Reel/Frame 054637/0161 →
MERGER Recorded Apr 19, 2018
From: CRIMSON CORPORATION
To: IVANTI, INC.
Reel/Frame 045983/0075 →
RELEASE OF SECOND LIEN SECURITY INTEREST IN PATENT COLLATERAL AT REEL/FRAME NO. 40183/0506 Recorded Jan 23, 2017
From: JEFFERIES FINANCE LLC
To: CRIMSON CORPORATION
Reel/Frame 041463/0457 →
RELEASE OF FIRST LIEN SECURITY INTEREST IN PATENT COLLATERAL AT REEL/FRAME NO. 40182/0345 Recorded Jan 23, 2017
From: JEFFERIES FINANCE LLC
To: CRIMSON CORPORATION
Reel/Frame 041463/0581 →
FIRST LIEN PATENT SECURITY AGREEMENT Recorded Jan 20, 2017
From: CRIMSON CORPORATION
To: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
Reel/Frame 041459/0387 →
SECOND LIEN PATENT SECURITY AGREEMENT Recorded Jan 20, 2017
From: CRIMSON CORPORATION
To: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
Reel/Frame 041052/0762 →
SECOND LIEN PATENT SECURITY AGREEMENT Recorded Sep 29, 2016
From: CRIMSON CORPORATION
To: JEFFERIES FINANCE LLC, AS COLLATERAL AGENT
Reel/Frame 040183/0506 →
FIRST LIEN PATENT SECURITY AGREEMENT Recorded Sep 29, 2016
From: CRIMSON CORPORATION
To: JEFFERIES FINANCE LLC, AS COLLATERAL AGENT
Reel/Frame 040182/0345 →
RELEASE OF SECURITY INTEREST IN PATENTS RECORDED AT R/F 031029/0849 Recorded Sep 28, 2016
From: JEFFERIES FINANCE LLC
To: CRIMSON CORPORATION
Reel/Frame 040171/0307 →
RELEASE OF SECURITY INTEREST IN PATENTS RECORDED AT R/F 032333/0637 Recorded Sep 28, 2016
From: JEFFERIES FINANCE LLC
To: CRIMSON CORPORATION
Reel/Frame 040171/0037 →
NUNC PRO TUNC ASSIGNMENT Recorded Sep 21, 2016
From: LANDESK SOFTWARE, INC.
To: CRIMSON CORPORATION
Reel/Frame 039819/0845 →
SECURITY AGREEMENT Recorded Feb 25, 2014
From: LANDESK SOFTWARE, INC.; CRIMSON CORPORATION
To: JEFFERIES FINANCE LLC
Reel/Frame 032333/0637 →
SECURITY AGREEMENT Recorded Aug 16, 2013
From: LANDESK GROUP, INC.; LANDSLIDE HOLDINGS, INC.; CRIMSON ACQUISITION CORP.; LANDESKSOFTWARE, INC.; CRIMSON CORPORATION
To: JEFFERIES FINANCE LLC, AS COLLATERAL AGENT
Reel/Frame 031029/0849 →
RELEASE OF SECURITY INTEREST Recorded Aug 12, 2013
From: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS ADMINISTRATIVE AGENT
To: LANDESK SOFTWARE, INC.
Reel/Frame 030993/0622 →
PATENT SECURITY AGREEMENT Recorded Jul 13, 2012
From: LANDESK SOFTWARE, INC.
To: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS ADMINISTRATIVE AGENT
Reel/Frame 028541/0782 →
RELEASE OF SECURITY INTEREST Recorded Jun 20, 2012
From: WELLS FARGO CAPITAL FINANCE, LLC
To: LANDESK GROUP, INC.; LANDSLIDE HOLDINGS, INC.; LANDESK SOFTWARE, INC.; CRIMSON ACQUISITION CORP.; CRIMSON CORPORATION
Reel/Frame 028413/0913 →