Task Execution Management With Dynamic Computation Period Extension
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing methods for managing task execution in computer systems are inefficient, particularly when dealing with tasks of varying run times and priorities, as they often result in task interruptions or error processing, which can be costly and disruptive, especially in critical systems like machinery operation.
Innovation Solution
A method that associates time-related execution characteristics with each task, allowing for an extended execution mode beyond theoretical end times and error processing algorithms, enabling deterministic task management and minimizing interruptions by storing execution continuation algorithms and tracking their usage.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If tasks are executed in fixed computation periods with strict time limits, then task timing precision is improved, but task execution reliability deteriorates when tasks exceed their allocated time
Solution Approach 1:
The system dynamically adjusts the execution time allocation for tasks based on their actual execution status. When a task exceeds its theoretical end time, the sequencer detects this and dynamically extends the computation period to accommodate the task's actual completion time, rather than rigidly enforcing the original time limit. This dynamic adjustment maintains timing precision for normal tasks while providing reliability protection for tasks that naturally exceed their estimated duration.
2Measurement precision
If error processing algorithms are launched when tasks overrun their execution time, then task timing control is improved, but system resource consumption increases
Solution Approach 1:
The sequencer implements a feedback mechanism that monitors task execution status in real-time. When a task approaches or exceeds its theoretical end time, the sequencer checks whether the task has actually completed before deciding whether to launch error processing. This feedback-based approach avoids unnecessary error processing for tasks that are simply taking longer than estimated, thereby reducing system resource consumption while maintaining timing control for tasks that truly need it.
3Speed
If tasks are interrupted when computation period ends, then system responsiveness to new tasks is improved, but ongoing task execution completeness deteriorates
Solution Approach 1:
The computation period duration is dynamically adjusted based on the actual execution status of the current task. When a task is still executing at its theoretical end time, the computation period is extended to allow the task to complete without interruption. This dynamic adjustment ensures that tasks are not prematurely interrupted, maintaining execution completeness while still allowing the system to respond to new tasks once the current task finishes.
4Reliability
If multiple processors are provided for critical tasks, then task execution reliability is improved, but system cost increases
Solution Approach 1:
The sequencer acts as an intermediary mechanism that provides reliability protection for tasks without requiring multiple physical processors. By monitoring task execution status and dynamically adjusting computation periods, the sequencer ensures that critical tasks can complete execution even if they exceed their theoretical time limits, thereby providing reliability equivalent to having redundant processors but at lower cost by using software-based time management instead of hardware redundancy.
Data Source
AI summary
A method of managing execution of tasks by at least one processor unit of a computer system is provided, the processor unit operating in computation periods, and the method including the steps of associating time-related execution characteristics with each task, the time-related execution characteristics including a flag indicating the possibility of determining, a priori, a theoretical time for the end of the task in a nominal execution mode, and a flag indicating the possibility of an extended execution mode whereby execution can continue beyond the theoretical end-of-execution time. When a task is being executed at the theoretical end-of-execution time, an execution continuation algorithm is launched in the presence of the flag indicating the possibility of extended mode, or an error processing algorithm is launched in the absence of such a flag.

