Task Group Cancellation Mechanism for Concurrent Execution Control
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing scheduler technologies in computer systems limit the ability of processes to control concurrent execution and cancel tasks, restricting flexibility and control over execution contexts.
Innovation Solution
A scheduler mechanism that allows task groups to be cancelled by arbitrary execution contexts or asynchronous error states, using cancel indicators and local aliases to manage concurrent execution and cancellation processes, enabling flexible task group management without synchronization.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If the scheduler maintains control over execution contexts and processing resources, then system stability and resource management are improved, but the process's ability to control and cancel concurrent execution is limited
Solution Approach 1:
The patent segments the execution context control by introducing task groups that can be independently cancelled. Each task group represents a unit of work that can be cancelled without affecting the entire process or other task groups. This segmentation allows the process to have fine-grained control over concurrent execution while the scheduler maintains overall system stability through its continued management of individual tasks and execution contexts.
2Reliability
If the scheduler limits execution context control to maintain system stability, then system reliability is improved, but task cancellation capability deteriorates
Solution Approach 1:
The patent introduces task groups as intermediary structures between the process and the scheduler's execution contexts. When a process needs to cancel tasks, it cancels the task group rather than directly managing individual execution contexts. This intermediary layer provides an easy-to-use cancellation interface for the process while the scheduler handles the complex work of notifying and terminating individual execution contexts, thus maintaining system reliability.
3Stability of the object's composition
If the scheduler restricts which execution contexts can control concurrent parts, then system stability is maintained, but process control flexibility is reduced
Solution Approach 1:
The patent makes task groups universal objects that can be created, managed, and cancelled by any execution context within the process, not just the original creator. This multi-functionality allows different execution contexts to cooperate and coordinate through shared task groups, enabling flexible process control while the scheduler maintains stability by managing the actual execution contexts according to its policies.
Data Source
AI summary
A scheduler in a process of a computer system schedules tasks of a task group for concurrent execution by multiple execution contexts. The scheduler provides a mechanism that allows the task group to be cancelled by an arbitrary execution context or an asynchronous error state. When a task group is cancelled, the scheduler sets a cancel indicator in each execution context that is executing tasks corresponding to the cancelled task group and performs a cancellation process on each of the execution contexts where a cancel indicator is set. The scheduler also creates local aliases to allow task groups to be used without synchronization by execution contexts that are not directly bound to the task groups.


