(file) Return to Core27_StorageExtent.mof CVS log (file) (dir) Up to [Pegasus] / pegasus / Schemas / CIMPrelim271

  1 karl  1.1 // ===================================================================
  2           // Title:       Core Storage Extents 2.7
  3           // Filename:    Core27_StorageExtent.mof
  4           // Version:     2.7.0
  5           // Release:     Preliminary 
  6           // Date:        09/20/02
  7           // ===================================================================
  8           // Copyright 2002 Distributed Management Task Force, Inc. (DMTF).
  9           // All rights reserved.  
 10           // DMTF is a not-for-profit association of industry members dedicated 
 11           // to promoting enterprise and systems management and interoperability. 
 12           // DMTF specifications and documents may be reproduced for uses
 13           // consistent with this purpose by members and non-members, 
 14           // provided that correct attribution is given. 
 15           // As DMTF specifications may be revised from time to time, 
 16           // the particular version and release date should always be noted.
 17           //
 18           // Implementation of certain elements of this standard or proposed 
 19           // standard may be subject to third party patent rights, including 
 20           // provisional patent rights (herein "patent rights"). DMTF makes 
 21           // no representations to users of the standard as to the existence 
 22 karl  1.1 // of such rights, and is not responsible to recognize, disclose, or
 23           // identify any or all such third party patent right, owners or 
 24           // claimants, nor for any incomplete or inaccurate identification or 
 25           // disclosure of such rights, owners or claimants. DMTF shall have no 
 26           // liability to any party, in any manner or circumstance, under any 
 27           // legal theory whatsoever, for failure to recognize, disclose, or 
 28           // identify any such third party patent rights, or for such party's
 29           // reliance on the standard or incorporation thereof in its product, 
 30           // protocols or testing procedures. DMTF shall have no liability to 
 31           // any party implementing such standard, whether such implementation 
 32           // is foreseeable or not, nor to any patent owner or claimant, and shall 
 33           // have no liability or responsibility for costs or losses incurred if 
 34           // a standard is withdrawn or modified after publication, and shall be
 35           // indemnified and held harmless by any party implementing the 
 36           // standard from any and all claims of infringement by a patent owner 
 37           // for such implementations.
 38           //
 39           // For information about patents held by third-parties which have 
 40           // notified the DMTF that, in their opinion, such patent may relate to 
 41           // or impact implementations of DMTF standards, visit 
 42           // http://www.dmtf.org/about/policies/disclosures.php.
 43 karl  1.1 // ===================================================================
 44           // Description: The Core Model defines basic management concepts. 
 45           //              This file defines the concepts and classes to model
 46           //              a type of LogicalDevice, StorageExtents.
 47           //
 48           //              The object classes below are listed in an order that
 49           //              avoids forward references. Required objects, defined 
 50           //              by other working groups, are omitted.
 51           // ==================================================================
 52           // Change Log for v2.7
 53           // CR722 - Add StorageExtent.ExtentStatus
 54           // CR775 - StorageExtent.NoSinglePointOfFailure, StorageExtent. 
 55           //         DataRedundancy, StorageExtent.SpindleRedundancy
 56           // CR777 - Add StorageExtent.DeltaReservation
 57           // CR862 - Define StorageExtent.ExtentStatus as an array
 58           // CR884 - Move RAID centric properties from StorageExtent to 
 59           //         StorageVolume
 60           // ==================================================================
 61           
 62           #pragma locale ("en_US")
 63           
 64 karl  1.1 
 65           // ===================================================================
 66           // StorageExtent
 67           // ===================================================================
 68           [Version ("2.7.0"), Description (
 69               "StorageExtent describes the capabilities and management of "
 70               "the various media that exist to store data and allow data "
 71               "retrieval. This superclass could be used to represent the "
 72               "various components of RAID (Hardware or Software) or as a "
 73               "raw logical extent on top of physical media.") ] 
 74           class CIM_StorageExtent : CIM_LogicalDevice {
 75           
 76               [Description ("Type of data organization used."), 
 77                   ValueMap {"0", "1", "2", "3", "4"},
 78                   Values {"Other", "Unknown", "Fixed Block", "Variable Block", 
 79                       "Count Key Data"} ]
 80               uint16 DataOrganization;
 81           
 82               [Description (
 83                   "A free form string describing the media and/or its use."),
 84                   MappingStrings {
 85 karl  1.1             "MIB.IETF|HOST-RESOURCES-MIB.hrStorageDescr"} ]
 86               string Purpose;
 87           
 88               [Description (
 89                   "Access describes whether the media is readable (value=1), "
 90                   "writeable (value=2), or both (value=3). \"Unknown\" (0) "
 91                   "and \"Write Once\" (4) can also be defined."),
 92                   ValueMap {"0", "1", "2", "3", "4"},
 93                   Values {"Unknown", "Readable", "Writeable", 
 94                       "Read/Write Supported", "Write Once"} ]
 95               uint16 Access;
 96           
 97               [Description (
 98                   "ErrorMethodology is a free-form string describing "
 99                   "the type of error detection and correction supported "
100                   "by this StorageExtent.") ]
101               string ErrorMethodology;
102           
103               [Description (
104                   "Size in bytes of the blocks which form this StorageExtent. "
105                   "If variable block size, then the maximum block size in bytes "
106 karl  1.1         "should be specified. If the block size is unknown or if a "
107                   "block concept is not valid (for example, for AggregateExtents, "
108                   "Memory or LogicalDisks), enter a 1."), 
109                   Units ("Bytes"),
110                   MappingStrings {"MIF.DMTF|Host Storage|001.4", 
111                       "MIB.IETF|HOST-RESOURCES-MIB.hrStorageAllocationUnits,"
112                       "MIF.DMTF|Storage Devices|001.5"} ]
113               uint64 BlockSize;
114           
115               [Description (
116                   "Total number of logically contiguous blocks, of size Block"
117                   "Size, which form this Extent. The total size of the Extent "
118                   "can be calculated by multiplying BlockSize by NumberOfBlocks. "
119                   "If the BlockSize is 1, this property is the total size of the "
120                   "Extent."),
121                   MappingStrings {"MIF.DMTF|Host Storage|001.5", 
122                       "MIB.IETF|HOST-RESOURCES-MIB.hrStorageSize"} ]
123                uint64 NumberOfBlocks;
124           
125                [Description ( 
126                    "The maximum number of blocks, of size BlockSize, which are "
127 karl  1.1          "available for consumption when layering StorageExtents "
128                    "using the BasedOn association. This property only has meaning "
129                    "when this StorageExtent is an Antecedent reference in a "
130                    "BasedOn relationship. For example, a StorageExtent could be "
131                    "composed of 120 blocks. However, the Extent itself may use 20 "
132                    "blocks for redundancy data. If another StorageExtent is "
133                    "BasedOn this Extent, only 100 blocks would be available to it. "
134                    "This information ('100 blocks is available for consumption') "
135                    "is indicated in the ConsumableBlocks property.") ]
136                uint64 ConsumableBlocks;
137           
138                [Description (
139                    "True indicates that the underlying StorageExtent(s) "
140                    "participate in a StorageRedundancyGroup.") ]
141                boolean IsBasedOnUnderlyingRedundancy;
142           
143               [Description (
144                   "Boolean set to TRUE if the Storage is sequentially accessed "
145                   "by a MediaAccessDevice. A TapePartition is an example of a "
146                   "sequentially accessed StorageExtent. StorageVolumes, Disk"
147                   "Partitions and LogicalDisks represent randomly accessed "
148 karl  1.1         "Extents.") ]
149               boolean SequentialAccess;
150                   
151               [Experimental, Description (
152                   "StorageExtents have additional status information beyond that "
153                   "captured in the OperationalStatus and other properties, inherited "
154                   "from ManagedSystemElement. This additional information (for "
155                   "example, \"Protection Disabled\", value=9) is captured in the "
156                   "VolumeStatus property."),
157                   ValueMap {"0", "1", "2", "3", "4", "5", "6", "7", "8", "9",
158                       "10", "11", "12", "13", "14"},
159                   Values {"Other", "Unknown", "None/Not Applicable", "Broken", 
160                       "Data Lost", "Dynamic Reconfig", "Exposed", 
161                       "Fractionally Exposed", "Partially Exposed", 
162                       "Protection Disabled", "Readying", "Rebuild", 
163                       "Recalculate", "Spare in Use", "Verify In Progress"} ]
164               uint16 ExtentStatus[];
165           };
166           
167           
168           // ===================================================================
169 karl  1.1 // BasedOn
170           // ===================================================================
171           [Association, Version ("2.6.0"), Description (
172              "BasedOn is an association describing how StorageExtents can "
173              "be assembled from lower level Extents. For example, "
174              "ProtectedSpaceExtents are parts of PhysicalExtents, while "
175              "VolumeSets are assembled from one or more Physical or "
176              "ProtectedSpaceExtents. As another example, CacheMemory "
177              "can be defined independently and realized in a PhysicalElement "
178              "or can be 'based on' Volatile or NonVolatileStorageExtents.") ] 
179           class CIM_BasedOn : CIM_Dependency {
180           
181              [Override ("Antecedent"), Description (
182                  "The lower level StorageExtent.") ]
183              CIM_StorageExtent REF Antecedent;
184           
185              [Override ("Dependent"), Description (
186                  "The higher level StorageExtent.") ]
187              CIM_StorageExtent REF Dependent;
188           
189              [Description (
190 karl  1.1        "StartingAddress indicates where in lower level storage, "
191                  "the higher level Extent begins.") ] 
192              uint64 StartingAddress;
193           
194              [Description (
195                  "EndingAddress indicates where in lower level storage, "
196                  "the higher level Extent ends. This property is useful when "
197                  "mapping non-contiguous Extents into a higher level grouping.") ] 
198              uint64 EndingAddress;
199           
200              [Description (
201                  "If there is an order to the BasedOn associations that "
202                  "describe how a higher level StorageExtent is assembled, the "
203                  "OrderIndex property indicates this. When an order exists, "
204                  "the instances of BasedOn with the same Dependent value "
205                  "(i.e., the same higher level Extent) should place unique "
206                  "values in the OrderIndex property. The lowest value implies "
207                  "the first member of the collection of lower level Extents, "
208                  "and increasing values imply successive members of the "
209                  "collection. If there is no ordered relationship, a value "
210                  "of zero should be specified. An example of the use of this "
211 karl  1.1        "property is to define a RAID-0 striped array of 3 disks. "
212                  "The resultant RAID array is a StorageExtent that is "
213                  "dependent on (BasedOn) the StorageExtents that describe "
214                  "each of the 3 disks. The OrderIndex of each BasedOn "
215                  "association from the disk Extents to the RAID array could "
216                  "be specified as 1, 2 and 3 to indicate the order in which "
217                  "the disk Extents are used to access the RAID data.") ]
218              uint16 OrderIndex;
219           };
220           
221           
222           // ===================================================================
223           // end of file
224           // ===================================================================

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2