Storage Control Apparatus Priority Queue Segmentation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In storage control systems, high-priority access processes are delayed due to the presence of a large number of low-priority commands in the queue, leading to increased execution times for high-priority processes.
Innovation Solution
Implementing a storage control apparatus with multiple queues for different access priorities, where entries are registered based on determined priorities and intermittently checked to fetch and execute commands, ensuring that high-priority processes are executed promptly.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If commands are temporarily registered in a queue before being issued to a storage apparatus, then the storage control system can manage command flow, but high-priority access processes are delayed when low-priority commands are present in the queue
Solution Approach 1:
The single command queue is segmented into multiple priority-based queues (first queue for high-priority commands, second queue for low-priority commands). This segmentation allows the system to separate and independently manage commands based on their priority levels, enabling high-priority commands to be processed without being blocked by low-priority ones, thus resolving the contradiction between maintaining command flow management and reducing execution delays for high-priority processes.
2Device complexity
If a single queue is used at the storage apparatus to store all incoming commands, then the structure is simple, but high-priority access processes take a long time to execute when low-priority commands are ahead in the queue
Solution Approach 1:
The storage apparatus is equipped with multiple queues (first queue and second queue) instead of a single queue, segmenting the command storage structure by priority level. This increases structural complexity slightly but dramatically improves the execution speed of high-priority processes by ensuring they are stored in and retrieved from the first queue, which is checked more frequently by the control apparatus.
Solution Approach 2:
The control apparatus dynamically checks the first queue more frequently than the second queue, creating a dynamic retrieval mechanism that adapts to priority requirements. This dynamic checking strategy allows the system to prioritize high-priority commands without requiring a complex static structure, balancing structural simplicity with execution speed.
3Loss of time
If multiple queues for different priorities are implemented, then high-priority processes can be executed promptly, but the device complexity increases
Solution Approach 1:
The command management system is segmented into two distinct queues with clear priority differentiation. This segmentation reduces the complexity of priority management by creating simple, well-defined separation rather than requiring complex arbitration logic, thus minimizing the increase in device complexity while achieving prompt execution of high-priority processes.
Solution Approach 2:
The control apparatus checks the queues at periodic intervals, with the first queue being checked more frequently than the second queue. This periodic action simplifies the queue management mechanism by using time-based priority handling rather than requiring complex real-time arbitration, thereby reducing device complexity while still ensuring prompt execution of high-priority processes.
Data Source
AI summary
When an access process has been requested for a storage apparatus, a registration unit determines an access priority of the requested access process and registers an entry corresponding to the requested access process in a queue corresponding to the determined access priority out of a plurality of queues that are each provided for a different access priority. An instruction unit checks the plurality of queues at intermittent check timing, fetches, at each check timing, one entry from each queue, out of the plurality of queues, in which entries are registered, and instructs the storage apparatus to execute access processes corresponding to the fetched entries.


