Electrical computers and digital processing systems: memory – Storage accessing and control – Specific memory composition
Reexamination Certificate
2000-01-21
2001-07-10
Nguyen, Hiep T. (Department: 2187)
Electrical computers and digital processing systems: memory
Storage accessing and control
Specific memory composition
C711S117000, C711S149000, C711S153000, C711S156000, C711S173000, C711S202000, C710S039000, C710S120000
Reexamination Certificate
active
06260109
ABSTRACT:
BACKGROUND OF THE INVENTION
This invention relates generally to storage systems associated with computer systems and more particularly to providing a method and apparatus for providing logical volumes which include more than one physical storage device.
As it is known in the art, computer systems generally include a central processing unit, a memory subsystem and a storage subsystem. According to a networked or enterprise model of a computer system, the storage subsystem associated with or in addition to a local computer system, may include a large number of independent storage devices or disks housed in a single enclosure. This array of storage devices is typically connected to several computers (or hosts) via dedicated cabling or via a network. Such a model allows for the centralization of data which is to be shared among many users and also allows a single point of maintenance for the storage functions associated with the many computer systems.
One type of storage system known in the art is one which includes a number of disk storage devices configured as an array (sometimes referred to as RAID). Such a system may include several arrays of storage devices. In addition to the arrays of storage devices, typical storage systems include several types of controllers, such as host controllers and disk controllers, for controlling the various aspects of the data transfers associated with the storage system.
The disk devices of a storage system are typically configured to represent one or more so called logical devices. A logical device is a way to define a contiguous area of storage space as being available as a distinct addressable unit. The addresses used to access data in a logical device typically need to be translated into physical addresses in order to find the requested data. In many systems, a logical device includes all the addressable storage of a single physical volume (e.g. disk drive). Thus, state of the art storage systems may include logical devices that provide 9GB of storage (from a single disk drive).
Several operating systems (e.g. Microsoft® Windows N/T ) require that the data storage systems support logical device sizes which exceed current physical volume sizes. One approach to providing larger logical devices would be to increase the size of the associated physical volumes. This would be accomplished by, for example, replacing a 9GB disk drive with a 23GB disk drive. This approach suffers from several drawbacks including the increased expense associated with larger capacity drives and the need to retrofit installed systems with these drives in order to provide the larger logical devices. Additionally, in storage systems like the SYMMETRIX® storage system manufactured by EMC Corporation of Hopkinton, Mass., using larger physical volumes requires increasing the size of each associated device header in global memory. This requirement arises from the fact that there would then be more tracks associated with each logical device. It would be advantageous therefore to provide a means of using two or more physical volumes to define a single large logical device. It would be of further advantage that the arrangement of the new large logical device be transparent to a disk controller controlling the physical volumes associated with the large logical device.
In accordance with one aspect of the present invention a storage system is provided which includes a plurality of storage devices. The storage devices may be disk drives, tape drives, optical drives, or the like. In addition to the storage devices, the storage system also includes a corresponding plurality of device queues which are used generally to store incoming requests until they can be serviced. A subset of the storage devices, and a corresponding subset of device queues are grouped together to form a so called META DEVICE. Although the META DEVICE may include several separate storage devices, it presents a single addressable unit to a host computer. The storage system further includes a host controller. The host controller receives input/output (I/O) data requests from the host computer. Upon receipt of a data request, the host controller determines if the request is to a META DEVICE. If the request is to a META DEVICE, the host controller then determines which device within the subset of devices should actually receive and execute the command. The data request is then placed in the appropriate device queue and serviced like any other request (i.e. like a request to a non-META DEVICE). With such an arrangement, a storage system may provide a logical device which provides a storage capacity which is much larger than any single physical storage device in the system. At the same time, the storage devices, shared memory, and storage controllers have no knowledge of the META DEVICE and require no modification in their operations in order to service a request to a META DEVICE.
In accordance with another aspect of the present invention, a method of operating a data storage system which includes a host controller, a storage controller, a shared memory, and a plurality of storage devices and a corresponding plurality of device records associated with said storage devices, wherein said device records function to queue incoming commands from a host computer includes the steps of first establishing a subset of said plurality of storage devices to function as a single addressable storage device (META DEVICE) as seen by said host computer. Once established, header portions of the device records making up the META DEVICE are modified to indicate membership in the META DEVICE. Thereafter, the host controller receives input/output (I/O) command directed to the META DEVICE. In response to receipt of an I/O command to the META DEVICE, the host controller stores the I/O command in a device record corresponding to the first device of the META DEVICE. The host controller analyzes the I/O command to determine which one of one of the subset of storage devices should perform the I/O command. Once determined, the host controller copies information relevant to the I/O command to the device record associated to storage device which was determined to be the target of the I/O. Thereafter, the command is executed in a known manner. With such a method, a storage system may provide a logical device which provides a storage capacity which is much larger than any single physical storage device in the system. At the same time, the storage devices, shared memory, and storage controllers have no knowledge of the META DEVICE and require no modification in their operations in order to service a request to a META DEVICE.
REFERENCES:
patent: 5457791 (1995-10-01), Matsumoto et al.
patent: 5568629 (1996-10-01), Gentry et al.
patent: 5671439 (1997-09-01), Klein et al.
patent: 5687390 (1997-11-01), McMillan, Jr.
patent: 5809516 (1998-09-01), Ukai et al.
patent: 6148369 (2000-11-01), Ofer et al.
Fitzgerald John
Halligan Kenneth
Ofer Erez
EMC Corporation
Gagne, Esq. Christopher K.
Gunther, Esq. John M.
Gupta, Esq. Krishnendu
Nguyen Hiep T.
LandOfFree
Method and apparatus for providing logical devices spanning... does not yet have a rating. At this time, there are no reviews or comments for this patent.
If you have personal experience with Method and apparatus for providing logical devices spanning..., we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Method and apparatus for providing logical devices spanning... will most certainly appreciate the feedback.
Profile ID: LFUS-PAI-O-2529804