Scheduler Finalization via Execution Context Tracking
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Schedulers in computer systems lack complete control over external execution contexts, which can lead to issues with terminating the scheduler due to the possibility of interrupting ongoing external execution contexts, and there is no mechanism for notifying the scheduler upon completion of external execution contexts.
Innovation Solution
A runtime environment is introduced that allows schedulers to be finalized by tracking and retiring both inducted and created execution contexts, enabling the scheduler to be terminated only after all external contexts have exited and internal contexts are retired, thereby preventing unwanted interruptions.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If the scheduler is terminated after completing all created execution contexts, then the scheduler resource is freed, but the termination may be blocked due to inducted external execution contexts that lack completion notification mechanisms
Solution Approach 1:
The patent implements a feedback mechanism where inducted execution contexts are required to notify the scheduler of their completion status. This is achieved through a finalization token that must be released by the execution context to signal completion, enabling the scheduler to reliably track when all contexts have finished and safely terminate.
Solution Approach 2:
The patent introduces a finalization token as an intermediary mechanism between the execution context and the scheduler. The token acts as a mediator that the execution context must release to indicate completion, allowing the scheduler to indirectly monitor context status without direct integration into the external context's execution path.
2Reliability
If the scheduler waits for all inducted execution contexts to complete before termination, then complete control is achieved, but the termination time is extended due to lack of completion notification
Solution Approach 1:
The patent applies preliminary action by requiring execution contexts to register completion notification mechanisms in advance, such as setting up finalization tokens or completion callbacks before execution begins. This allows the scheduler to proactively detect completion events without continuous polling, reducing termination delay while maintaining reliability.
Solution Approach 2:
The feedback mechanism enables the scheduler to immediately detect when inducted execution contexts complete by receiving notification signals. This real-time feedback eliminates the need for the scheduler to wait passively, allowing timely termination as soon as all contexts have finished their work.
3Adaptability or versatility
If external execution contexts are allowed to continue executing outside the scheduler, then flexibility is improved, but the scheduler cannot be finalized until their status is known
Solution Approach 1:
The finalization token serves as an intermediary that decouples the external execution context from the scheduler's internal state management. The context can execute independently outside the scheduler while still providing completion notification through the token mechanism, allowing flexibility without preventing scheduler finalization.
Solution Approach 2:
The patent extracts the completion notification responsibility from the scheduler's core management functions and implements it as a separate mechanism that execution contexts must adopt. This extraction allows contexts to operate independently outside the scheduler while still contributing to the scheduler's finalization process through the notification system.
Data Source
AI summary
A runtime environment allows a scheduler in a process of a computer system to be finalized prior to the process completing. The runtime environment causes execution contexts that are inducted into the scheduler and execution contexts created by the scheduler to be tracked. The runtime environment finalizes the scheduler subsequent to each inducted execution context exiting the scheduler and each created execution context being retired by the scheduler.


