Storage system and method of executing commands by controller
First Claim
1. A storage system, comprising:
- a plurality of storage devices; and
a controller configured to add each non-priority command received for the storage devices to a non-priority command queue, execute each priority command received for the storage devices during a predetermined time period until a quantity of priority commands executed during the predetermined time period reaches a predetermined value, and, upon the quantity of priority commands executed during the predetermined time period reaching the predetermined value, adding each priority command received for the storage devices during the duration of the predetermined time period to the non-priority command queue and sequentially dequeueing and executing commands from the non-priority command queue for the duration of the predetermined time period.
1 Assignment
0 Petitions
Accused Products
Abstract
A storage subsystem capable of processing time-critical control commands while suppressing deterioration of the system performance to a minimum. When various commands are received in a multiplex manner via the same port from plural host devices, the channel adapter of the storage subsystem extracts commands of a first kind from the received commands. Then, the adapter executes the extracted commands of the first kind with high priority within a given unit time until a given number of guaranteed activations is reached. At the same time, commands of a second kind are enqueued in a queue of commands. After the commands of the first kind are executed as many as the number of guaranteed activations, the commands of the second kind are executed in the unit time.
-
Citations
12 Claims
-
1. A storage system, comprising:
-
a plurality of storage devices; and a controller configured to add each non-priority command received for the storage devices to a non-priority command queue, execute each priority command received for the storage devices during a predetermined time period until a quantity of priority commands executed during the predetermined time period reaches a predetermined value, and, upon the quantity of priority commands executed during the predetermined time period reaching the predetermined value, adding each priority command received for the storage devices during the duration of the predetermined time period to the non-priority command queue and sequentially dequeueing and executing commands from the non-priority command queue for the duration of the predetermined time period. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A method of executing commands for a plurality of storage devices of a storage system by a controller within the storage system, the method comprising:
-
adding each non-priority command received for the storage devices to a non-priority command queue; executing each priority command received for the storage devices during a predetermined time period until a quantity of priority commands executed during the predetermined time period reaches a predetermined value; and upon the quantity of priority commands executed during the predetermined time period reaching the predetermined value, adding each priority command received for the storage devices during the duration of the predetermined time period to the non-priority command queue and sequentially dequeueing and executing commands from the non-priority command queue for the duration of the predetermined time period. - View Dependent Claims (8, 9, 10, 11, 12)
-
Specification