Abstract:
A method, apparatus, and computer program product are disclosed for controlling accesses of drives in a storage subsystem. A first array of a first type of drive is provided. The first type of drive is a server class of drive. A second array of a second type of drive is provided. The second type of drive is a PC class drive. The first and second arrays are bound together to form a single array of drives. The single array of drives is presented to a host that is coupled to the storage subsystem as a single array. The host is unaware that the single array includes two different types of drives. Data is stored in the second array of drives. Data is migrated from the second array of drives to the first array of drives when an access rate of the second array of drives exceeds a threshold access rate for the second type of drive.
Abstract:
A method and system where a hardware platform such as a disk drive is formatted to the largest block length it is desired to read from or write to. Using commands, data can be accessed from the drive in any block length that is equal to or less than the formatted block length.
Abstract:
A system, computer-implementable method, and computer-readable medium for improving sequential serial attached small computer system interface storage device performance. According to a preferred embodiment, a microprocessor within a target device receives a collection of tasks from at least one initiator device via a collection of initiator paths. The target device is a cyclic non-volatile memory medium. The microprocessor queues the collection of tasks according to a collection of task list. Each task list corresponds to a respective initiator path. The microprocessor combines the collection of tasks in an execution queue. The collection of tasks on the execution queue is reordered based on a priority scheme. The microprocessor executes the collection of tasks from the execution queue.
Abstract:
Method, system and computer program product for reporting and recovering from uncorrectable data errors in a data processing system using the Advanced Technology Attachment (ATA) or the Serial ATA (SATA) protocol. The invention utilizes the data scrubbing functionality of SCSI hard drives to provide a higher level of data integrity in an operating system implemented RAID environment. If an uncorrectable data error is found on a hard drive during a background data scrubbing operation, information concerning the data error is logged in a S.M.A.R.T. (Self Monitoring Analysis and Reporting Technology) error data structure. When the host operating system identifies the uncorrectable data error during normal operation, a Host Array Manager issues a Write Command to write the data from a redundant drive after the defective Logical Block Address (LBA) has been reassigned.
Abstract:
A method and an apparatus is presented for configuring a system bus topology dynamically. In a preferred embodiment, the system bus is a Small Computer System Interface (SCSI) bus that connects a “daisy” chain of disk drives. Two types of disk drives are used: single ended (SE) “Ultra” drives capable of 20 MHz operation and LVD (low voltage differential) “Ultra Plus” drives capable of 40 MHz operation. LVD disk drives can also function in the slower SE mode. The first drive in the chain of drives may need to be connected by a cable over three feet long. This introduces signal degradation that is often overcome by introducing redrive circuitry to boost signal quality. This is an expensive solution and a much easier solution is presented: install a jumper between the last drive in the chain and the first drive. However, if LVD bus mode is used, then this jumper solution does not work and the jumper must be removed. Disk drives in a server system are “hot swappable,” which means they can be changed at run time without shutting down the system. A method and an apparatus is provided for dynamically testing for the appropriate mode of bus operation based on the currently installed disk drives and adjusting the jumper setting accordingly.
Abstract:
An embodiment of this invention provides a system and method for a diagnostic computer application executing on a host computer to extract vendor unique diagnostic information from an attached peripheral device. The peripheral device is pre-configured to respond with device unique information in response to certain standard interface protocol inquiries. Standard interface inquiry commands are used to extract detailed instructions from the device. These instructions may contain device unique small computer system interface (SCSI) command sequences, for example. The command sequences allow a user of the host computer to extract detailed data from the peripheral device about the peripheral device's operational, performance and health statistics.
Abstract:
A system, method, and computer program product for recovering from data errors. In a SCSI hard drive system, when a unrecoverable data error condition is encountered, the logical block address is reassigned using information provided by the data scrubbing functionality of the SCSI hard drive.
Abstract:
A data processing system, method, and product are disclosed for providing an adaptive fast write cache for storage devices. A write cache is provided in a storage device. A FAST WRITE operation is executed utilizing the write cache only when writing particular types of data. A command complete status is returned prior to writing data when a FAST WRITE operation is executed, and a command complete status is returned only after writing data when a FAST WRITE operation is not executed.
Abstract:
A method and system where a hardware platform such as a disk drive is formatted to the largest block length it is desired to read from or write to. Using commands, data can be accessed from the drive in any block length that is equal to or less than the formatted block length.
Abstract:
A system, computer-implementable method, and computer-readable medium for improving sequential serial attached small computer system interface storage device performance. According to a preferred embodiment, a microprocessor within a target device receives a collection of tasks from at least one initiator device via a collection of initiator paths. The target device is a cyclic non-volatile memory medium. The microprocessor queues the collection of tasks according to a collection of task list. Each task list corresponds to a respective initiator path. The microprocessor combines the collection of tasks in an execution queue. The collection of tasks on the execution queue is reordered based on a priority scheme. The microprocessor executes the collection of tasks from the execution queue.