IP Library Granted Patent US 7,310,803
Granted Patent B2
US 7,310,803 · App. 09/981,883 · Granted Dec 18, 2007

Method and system for executing multiple tasks in a task set

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 7,310,803
App. No.
09/981,883
Granted
Dec 18, 2007
Kind
B2
Abstract

A method, system and computer readable storage medium for executing a set of tasks. The method includes selecting an incomplete task in the set and then either starting its execution (if it was not previously suspended) or resuming its execution (if it was previously suspended). An execution timer is also started. If the selected task completes before expiry of the execution timer, the selection process is reinitiated; otherwise, the selected task is suspended, and the selection process is reinitiated. In this way, processing of a lengthy or lower-priority task can be pre-empted by processing of a shorter or higher-priority task. The method may also involve recognizing that a new version of an existing task already in the task set has been added thereto. In such a case, the older version is removed from the task set even if it is not yet complete.

Claims (17)

1. A method of executing a set of at least one incomplete task, comprising:

(a) selecting an incomplete task from the set on the basis of an expected duration until completion for that task;

(b) resetting an execution timer having an expiry condition, wherein the expiry condition is a pre-determined percentage of completeness of the selected task;

(c) advancing execution of the selected task until the earlier of (i) completion of the selected task or (ii) expiry of the execution timer; and

(d) upon expiry of the execution timer prior to completion of the selected task, suspending execution of the selected task.

2. A method as defined in claim 1 , wherein advancing execution of the selected task includes beginning the selected task if the selected task has not been previously suspended.

3. A method as defined in claim 2 , wherein advancing execution of the selected task includes resuming the selected task if the selected task has been previously suspended.

4. A method as defined in claim 3 , wherein suspending the selected task includes saving a context associated with the selected task.

5. A method as defined in claim 4 , wherein resuming the selected task includes retrieving the previously saved context associated with the selected task.

6. A method as defined in claim 5 , wherein the context associated with the selected task includes variables local to the selected task.

7. A method as defined in claim 5 , wherein the context associated with the selected task includes a state of the selected task.

8. A method as defined in claim 5 , wherein the context associated with the selected task includes a state of a central processing unit (CPU).

9. A method of executing a set of at least one incomplete task, comprising:

(a) selecting an incomplete task from the set on the basis of a number of times that the task has been previously suspended;

(b) resetting an execution timer having an expiry condition, wherein the expiry condition of the execution timer is a pre-determined percentage of completeness of the selected task;

(c) advancing execution of the selected task until the earlier of (i) completion of the selected task or (ii) expiry of the execution timer; and

(a) upon expiry of the execution timer prior to completion of the selected task, suspending execution of the selected task.

Assignments (8)
RELEASE OF SECURITY INTEREST Recorded Oct 26, 2020
From: JEFFERIES FINANCE LLC
To: RPX CORPORATION
Reel/Frame 054486/0422 →
SECURITY INTEREST Recorded Jun 29, 2018
From: RPX CORPORATION
To: JEFFERIES FINANCE LLC
Reel/Frame 046486/0433 →
RELEASE (REEL 038041 / FRAME 0001) Recorded Jan 2, 2018
From: JPMORGAN CHASE BANK, N.A.
To: RPX CORPORATION; RPX CLEARINGHOUSE LLC
Reel/Frame 044970/0030 →
SECURITY AGREEMENT Recorded Mar 9, 2016
From: RPX CORPORATION; RPX CLEARINGHOUSE LLC
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 038041/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 19, 2014
From: HYPERCHIP INC.
To: RPX CORPORATION
Reel/Frame 033563/0706 →
CHANGE OF NAME Recorded Oct 9, 2008
From: 4198638 CANADA INC.
To: HYPERCHIP INC.
Reel/Frame 021731/0674 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 12, 2004
From: HYPERCHIP, INC.
To: 4198638 CANADA INC.
Reel/Frame 015981/0394 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 22, 2002
From: HAUGHEY, JOHN
To: HYPERCHIP INC.
Reel/Frame 012492/0953 →