Task execution and context switching in a scheduler
AssigneeMicrosoft Corporation
InventorsPaul F. Ringseth, Genevieve Fernandes
Life of this patent
Estimating the term…
Abstract
A scheduler in a process of a computer system detects a task with an associated execution context that has not been previously invoked by the scheduler. The scheduler executes the task on a processing resource without performing a context switch if the processing resource executed a previous task to completion. The scheduler stores the execution context originally associated with the task for later use.
Claims18
A method performed by a scheduler of a process executing on a computer system, the method comprising:
- executing a first task associated with a first execution context to completion without blocking or being interrupted on a first processing resource allocated to the scheduler;
- and
- executing a second task, distinct from the first task and associated with a second execution context, with the first execution context on the first processing resource in response to the second task not being invoked previously by the scheduler.
A computer readable storage medium storing computer-executable instructions that, when executed by a computer system, perform a method in a scheduler in a process executing on the computer system, the method comprising:
- executing a first task associated with a first execution context as a continuation on a second execution context on a first processing resource of the scheduler in response to the first task being not invoked previously by the scheduler;
- and
- performing a first context switch from the second execution context to the first execution context on the first processing resource in response to the first task being invoked previously by the scheduler;
- and
- performing a second context switch from a third execution context to the first execution context on a second processing resource of the scheduler to execute a second task associated with the first execution context.
A method performed by a scheduler in a process executing on a computer system comprising:
- detecting a first task associated with a first execution context, wherein the first task has not been invoked previously by the scheduler;
- and
- executing the first task as a continuation on a second execution context on a first processing resource of the scheduler in response to a second task executed by the first processing resource with the second execution context completing and not blocking or being interrupted.
Dependencies are inferred from the claim text.