A disk storage system has a control unit having a plurality of external connection points. When the control unit receives two read requests issued from a processor to two disks of a disk unit group, a first read operation is performed to read data requested by the first read request from one of the disks and a second read operation is performed to read data requested by the second read request from the other one of the disks. Also, a first output operation is performed to output data read by the first read operation from one of the external connection points of the control unit and a second output operation is performed to output data read by the second read operation from another of the external connection points of the control unit. The second output operation is started before the first output operation has finished.
This is a continuation application of U.S. Ser. No. 08/868,075 filed Jun. 3, 1997, now U.S. Pat. No. 5,835,938, which is a continuation of Ser. No. 08/355,274 filed Dec. 12, 1994, now U.S. Pat. No. 5,680,574, which is a file wrapper continuation of Ser. No. 07/648,998 filed Jan. 31, 1991, now abandoned.
A storage system includes a physical storage system in the form of a number of disk storage units and a controller unit that handles data transfers between the disk storage units and one or more host data processing systems. Data is stored in mirrored fashion so that multiple copies of the data are available for fault tolerance and enhanced performance. The controller unit implements a logical volume management system that includes a plurality of logical volumes, each of which map to corresponding areas of storage of the disk storage units, thereby parsing the available physical storage. Received I/O write and read requests are assigned to one or another of the logical volumes, and therethrough data is written to or read from the corresponding disk storage unit or units. Usage of the disk storage units is monitored by the controller, and if one or more are found to be over-utilized, the number of logical volumes is increased to more finely parse the physical storage. Conversely, if the controller unit determines that one or more of the physical storage units are under-utilized, the number of logical volumes is decreased.
A method for improving disk drive performance by reducing the overhead associated with the command processing code requesting a seek. As multiple commands are queued up in a command queue, a next command is identified and immediately stored in a servo position queue, as soon as the next command location is determined. Therefore, as the drive electronics are prepared for read and write operations, the servo system initiates the actuator to move the read/write head to the next command location. By the time the read/write head arrives at the next command location, the drive electronics are ready for the read/write operation. As a subsequent command is determined, its location is again entered into the position queue, overwriting the previous command location.
A method and system for decreasing the time needed for a mirror split operation in a data storage device by preparing for the mirror split operation during a time interval between notification of an intended mirror split operation and the subsequent time of the mirror split operation. In general, local writes are processed preferentially and asynchronously with respect to corresponding mirror writes, but, after receiving a split advance warning, the data storage device controller preferentially processes backlogged mirror writes in order that the mirrored data storage units are nearly consistent at the time that the intended mirror split operation request is received.
A storage system includes a storage controller and storage media for reading data from or writing data to the storage media in response to block-level and file-level I/O requests. The storage controller includes suitable interfaces for receiving the read/write requests and effecting the reading of data to or the writing of data to the storage media.
A storage system includes a storage controller and storage media for reading data from or writing data to the storage media in response to block-level and file-level I10 requests. The storage controller includes suitable interfaces for receiving the read/write requests and effecting the reading of data to or the writing of data to the storage media.