Electrical computers and digital processing systems: memory – Storage accessing and control – Specific memory composition
Reexamination Certificate
1999-11-29
2003-09-30
Kim, Matthew (Department: 2186)
Electrical computers and digital processing systems: memory
Storage accessing and control
Specific memory composition
C711S202000, C711S122000
Reexamination Certificate
active
06629202
ABSTRACT:
FIELD OF THE INVENTION
This invention relates generally to computer data storage systems, and more particularly to stacking operations for data storage systems.
COPYRIGHT NOTICE/PERMISSION
A portion of the disclosure of this patent document contains material which is subject to copyright protection. The copyright owner has no objection to the facsimile reproduction by anyone of the patent document or the patent disclosure as it appears in the Patent and Trademark Office patent file or records, but otherwise reserves all copyright rights whatsoever. The following notice applies to the software and data as described below and in the drawing hereto: Copyright© 1998, Microsoft Corporation, All Rights Reserved.
BACKGROUND OF THE INVENTION
As computer systems have evolved so has the availability and configuration of data storage devices, such as magnetic or optical disks. For example, these storage devices can be connected to the computer system via a bus, or they can be connected to the computer system via a wired or wireless network. In addition, the storage devices can be separate or co-located in a single cabinet.
A storage volume is a software abstraction of the underlying storage devices and is commonly the smallest self-contained unit of storage exposed by an operating system and administered by a file system. Storage volumes abstract the physical topology of the storage devices and may be a fraction of a disk, a whole disk or even multiple disks that are bound into a contiguous range of logical blocks.
Volumes are constructed from one or more extents, with each extent being a contiguous storage address spaces presented by the underlying storage device. An extent is typically characterized by the size of the address space and a starting offset for the address space from a base of the media. Volume mapping is the process of mapping the contiguous address space presented by the volume onto the usually non-contiguous storage address spaces of the underlying extents. Volume mappings are either implemented on a specialized hardware controller, referred to as a hardware volume provider, or in software by a software volume provider.
Volume mappings may be used to increase the fault tolerance, performance, or capacity characteristics of the underlying storage devices. For example, a technique for improving fault tolerance, known as mirroring or plexing a disk, uses multiple disks. When data is written to one disk the data is also written to a second disk; thus the second disk is a “mirror image” of the first disk. If one disk should fail the other disk is still available for use and has an exact copy of the information on the first disk.
In addition RAID numbers are often used to identify storage volume mappings. A RAID, or Redundant Array of Independent Disks, provides the ability to lose an extent without losing volume data. Access to the volume may be slower or more costly, but is not interrupted by the failure of the underlying extent. RAID1 implements mirroring. RAID3 and above all implement some sort of stripe with parity scheme; the different number indicates the arrangement of the data and check-data (or parity) extents. Striping is a mechanism where data for a file or file system is distributed among several different disks.
While the above-mentioned techniques can be used to provide increased performance, fault tolerance or storage capacity, several problems remain. First, it is useful to have combinations of volume mappings. Current systems do not provide a canonical (or well-understood) set of primitive operations such that a user or administrator can combine capabilities from different volume providers to achieve a desired final result.
A second problem is that the arbitrary combination of volume management constructs is quite large. Moreover, many combinations result in volumes that have either performance or reliability problems.
Therefore, there is a need in the art for a system that provides a volume stacking model that enables volume mappings to achieve fault tolerance, increased performance, and/or increased capacity while eliminating volume mappings that can potentially cause performance or reliability problems.
SUMMARY OF THE INVENTION
The above-mentioned shortcomings, disadvantages and problems are addressed by the present invention, which will be understood by reading and studying the following specification.
The systems and methods presented implement a hierarchy of stacking operations that create and maintain a stacked volume. One aspect of the system is that a logical volume manager comprises one or more components that define a stacking model having a plurality of levels. A configuration component controls the configuration of the underlying storage device. A striping component manages striping of volumes defined by the configuration component. A mapping component provides for concatenating volumes defined by the configuration component or the striping component.
Another aspect of the system is that one or more optional plex components provide for plexing, or mirroring, volumes. A first plex component provides for mirroring volumes defined by the configuration component or the striping component. A second plex component provides for mirroring volumes defined by the mapping component. Thus, the second plex component allows for mirroring an entire volume set, while the first plex component provides for mirroring a component volume of a volume set.
Thus, the invention provides for advantages not found in prior systems. The hierarchy imposed reduces unnecessary combinatoric complexity. It also helps ensure robust interaction between logical volume providers and a file system or other data manager, and greatly simplifies dynamic volume resizing of volumes, that is, growing or shrinking a volume without system disruption.
The present invention describes systems, methods, and computer-readable media of varying scope. In addition to the aspects and advantages of the present invention described in this summary, further aspects and advantages of the invention will become apparent by reference to the drawings and by reading the detailed description that follows.
REFERENCES:
patent: 5530658 (1996-06-01), Hafner et al.
patent: 5553285 (1996-09-01), Krakauer et al.
patent: 5568629 (1996-10-01), Gentry et al.
patent: 5598549 (1997-01-01), Rathunde
patent: 5761526 (1998-06-01), Sakakura et al.
patent: 5802364 (1998-09-01), Senator et al.
patent: 6219693 (2001-04-01), Napolitano et al.
patent: 0 485 110 (1991-10-01), None
patent: 0 689 125 (1995-02-01), None
patent: 0 732 653 (1996-02-01), None
patent: WO 92/22865 (1992-12-01), None
patent: WO 97/07461 (1997-02-01), None
patent: WO 98/15895 (1998-04-01), None
“XFS: A Next Generation Journalled 64-Bit Filesystem With Guaranteed Rate I/O”, http://www-europe.sgi.com/Technology/xfs-whitepaper.html, Silicon Graphics—XFS White Paper, 1-20, (Mar. 15, 1999).
Cabrera Luis Felipe
Kusters Norbert P.
van Ingen Catharine
Anderson Matthew D.
Kim Matthew
Merchant & Gould P.C.
Microsoft Corporation
LandOfFree
Volume stacking model does not yet have a rating. At this time, there are no reviews or comments for this patent.
If you have personal experience with Volume stacking model, we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Volume stacking model will most certainly appreciate the feedback.
Profile ID: LFUS-PAI-O-3029110