Task scheduling method and apparatus
First Claim
1. A method of scheduling execution of a plurality of tasks by a processor, the processor having a processor memory, the processor being arranged to load into the processor memory, during execution of a current task, data for execution of a task that is scheduled for execution after the processor has completed the current task, the method comprising:
- executing by the processor a current task;
scheduling a next task for execution by the processor;
after scheduling the next task, determining whether there is a high priority task to be executed by the processor; and
if there is a high priority task to be executed by the processor;
determining whether the processor has begun loading data for execution of the next task into the processor memory;
if the processor has not begun loading the data for execution of the next task into the processor memory, scheduling the high priority task, instead of the next task, for execution by the processor after the processor has completed the current task; and
if the processor has begun loading the data for execution of the next task into the processor memory, maintaining the next task as scheduled for execution after the processor has completed the current task.
31 Assignments
0 Petitions
Accused Products
Abstract
A method of scheduling execution of a plurality of tasks by a processor, the processor having a processor memory, the processor being arranged to load into the processor memory, during execution of a current task, data for a task that is scheduled for execution after the processor has completed the current task, the method comprising the steps of scheduling a next task for execution by the processor after the processor has completed a current task, and determining whether there is a high priority task to be executed by the processor, if there is a high priority task to be executed by the processor: determining whether the processor has begun loading the data for the next task into the processor memory, and if the processor has not begun loading the data for the next task into the processor memory, scheduling the high priority task, instead of the next task, for execution by the processor after the processor has completed the current task.
29 Citations
20 Claims
-
1. A method of scheduling execution of a plurality of tasks by a processor, the processor having a processor memory, the processor being arranged to load into the processor memory, during execution of a current task, data for execution of a task that is scheduled for execution after the processor has completed the current task, the method comprising:
-
executing by the processor a current task; scheduling a next task for execution by the processor; after scheduling the next task, determining whether there is a high priority task to be executed by the processor; and if there is a high priority task to be executed by the processor; determining whether the processor has begun loading data for execution of the next task into the processor memory; if the processor has not begun loading the data for execution of the next task into the processor memory, scheduling the high priority task, instead of the next task, for execution by the processor after the processor has completed the current task; and if the processor has begun loading the data for execution of the next task into the processor memory, maintaining the next task as scheduled for execution after the processor has completed the current task. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. An apparatus for scheduling execution of a plurality of tasks by a processor, the apparatus comprising:
-
the processor, having a processor memory, to execute a current task and to load into the processor memory, during execution of a current task, data for execution of a next task, wherein the scheduled execution of the next task is after the completion of the current task; a scheduler to schedule the next task for execution by the processor and to determine, after scheduling the next task for execution, whether there is a high priority task to be executed by the processor, wherein the scheduler, if there is a high priority task to be executed by the processor, is to; determine whether the processor has begun loading the data for execution of the next task into the processor memory; if the processor has not begun loading the data for execution of the next task into the processor memory, to schedule the high priority task, instead of the next task, for execution by the processor after the processor has completed the current task; and if the processor has begun loading the data for execution of the next task into the processor memory, to maintain the next task as scheduled for execution after the processor has completed the current task. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17)
-
-
18. A non-transitory computer-readable medium comprising a plurality of instructions to manipulate one or more processors on one or more computing devices, the plurality of instructions comprising:
-
instructions to execute a current task by a processor of the one or more processors; instructions to schedule a next task for execution by the processor; instructions to determine whether there is a high priority task to be executed by the processor, the determination to be made after the scheduling the next task; instructions to determine whether the processor has begun loading data for execution of the next task into a memory of the processor memory, if there is a high priority task to be executed by the processor; instructions to schedule the high priority task, instead of the next task, for execution by the processor after the processor has completed the current task if the processor has not begun loading the data for execution of the next task into the processor memory; and instructions to maintain the next task as scheduled for execution after the processor has completed the current task if there is a high priority task to be executed by the processor and if the processor has begun loading the data for execution of the next task into the processor memory. - View Dependent Claims (19, 20)
-
Specification