Shared Resource Priority Arbitration for Process Preemption
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In systems where multiple processes share resources, lower-priority processes can occupy shared resources before higher-priority processes, leading to inefficient execution and potential delays in critical operations.
Innovation Solution
A resource management device that tracks and prioritizes processes using shared resources by interrupting lower-priority processes when a higher-priority process needs to access the same resource, ensuring that higher-priority processes are executed promptly.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If multiple processes share a resource without priority management, then resource utilization is improved, but execution order cannot be guaranteed and high-priority processes may be delayed
Solution Approach 1:
The system dynamically adjusts process execution by introducing interrupt mechanisms that allow high-priority processes to preempt low-priority processes based on real-time priority comparisons, making the resource allocation flexible rather than static
Solution Approach 2:
A resource management device is introduced as an intermediary between multiple processes and the shared resource, managing access rights and priority arbitration to ensure high-priority processes are not blocked by low-priority ones
2Ease of operation
If a low-priority process occupies a shared resource, then resource access is achieved, but high-priority processes must wait and execution efficiency deteriorates
Solution Approach 1:
The system implements dynamic priority-based preemption where the resource allocation changes based on the relative priorities of competing processes, allowing efficient switching between processes based on their urgency
Solution Approach 2:
The resource management device continuously monitors process priorities and resource usage states, using this feedback to make real-time decisions about process interruption and resumption to maintain optimal execution efficiency
3Reliability
If priority-based interrupt mechanism is implemented, then execution order of high-priority processes is guaranteed, but system complexity increases
Solution Approach 1:
The complex priority management and interrupt arbitration logic is extracted into a separate resource management device, isolating the complexity from the main processing system and allowing simpler process implementations
Data Source
AI summary
A resource management device includes a processor configured to update registered process information indicating priority of a process being executed and an area in a shared resource used by the process, at every start or end of execution of one of processes using the shared resource, determine, when a first process being executed rewrites data stored in the shared resource, whether a second process using an area in the shared resource used by the first process exists, by referring to the registered process information, interrupt the first process until termination of the second process when the second process having higher priority than the first process exists, and interrupt the second process until termination of the first process when the second process having lower priority than the first process exists.


