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

  1 karl  1.1 // ===================================================================
  2           // Title:       Storage Devices 2.7
  3           // Filename:    Device27_StorageDevices.mof
  4           // Version:     2.7.0
  5           // Release:     Preliminary 
  6           // Date:        07/17/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 Device Model extends the management concepts that
 45           //              are related to LogicalDevices. This file defines 
 46           //              the management of storage devices (floppies, 
 47           //              CD-ROMs, hard drives, etc.).
 48           //
 49           //              The object classes below are listed in an order that
 50           //              avoids forward references. Required objects, defined 
 51           //              by other working groups, are omitted.
 52           // ==================================================================
 53           // Change Log for v2.7
 54           // CR721 - Add DeviceErrorCountData that is part of the new statistics
 55           //         hierarchy
 56           // ================================================================== 
 57           
 58           #pragma locale ("en_US")
 59           
 60           
 61           // ===================================================================
 62           // MediaAccessDevice
 63           // ===================================================================
 64 karl  1.1 [Version ("2.6.0"), Description (
 65               "A MediaAccessDevice represents the ability to access one or "
 66               "more media and use this media to store and retrieve data.") ] 
 67           class CIM_MediaAccessDevice : CIM_LogicalDevice {
 68           
 69               [Description (
 70                   "Capabilities of the MediaAccessDevice. For example, the " 
 71                   "Device may support \"Random Access\", removeable media and "
 72                   "\"Automatic Cleaning\". In this case, the values 3, 7 and 9 "
 73                   "would be written to the array. \n"
 74                   "Several of the enumerated values require some explanation: "
 75                   "1) Value 11, Supports Dual Sided Media, distinguishes a "
 76                   "Device that can access both sides of dual sided Media, from "
 77                   "a Device that reads only a single side and requires the "
 78                   "Media to be flipped; and, 2) Value 12, Predismount Eject "
 79                   "Not Required, indicates that Media does not have to be "
 80                   "explicitly ejected from the Device before being accessed "
 81                   "by a PickerElement."), 
 82                   ArrayType ("Indexed"),
 83                   ValueMap {"0", "1", "2", "3", "4", "5", "6", "7", "8", "9", 
 84                       "10", "11", "12"},
 85 karl  1.1         Values {"Unknown", "Other", "Sequential Access", 
 86                       "Random Access", "Supports Writing", "Encryption",
 87                       "Compression", "Supports Removeable Media",
 88                       "Manual Cleaning", "Automatic Cleaning", 
 89                       // 10
 90                       "SMART Notification", "Supports Dual Sided Media", 
 91                       "Predismount Eject Not Required"}, 
 92                   MappingStrings {"MIF.DMTF|Storage Devices|001.9", 
 93                       "MIF.DMTF|Storage Devices|001.11", 
 94                       "MIF.DMTF|Storage Devices|001.12",
 95                       "MIF.DMTF|Disks|003.7", "MIF.DMTF|Host Disk|001.2",  
 96                       "MIF.DMTF|Host Disk|001.4"}, 
 97                   ModelCorrespondence {
 98                       "CIM_MediaAccessDevice.CapabilityDescriptions"} ]
 99               uint16 Capabilities[];
100           
101               [Description (
102                   "An array of free-form strings providing more detailed "
103                   "explanations for any of the AccessDevice features indicated "
104                   "in the Capabilities array. Note, each entry of this array "
105                   "is related to the entry in the Capabilities array that "
106 karl  1.1         "is located at the same index."),
107                   ArrayType ("Indexed"),
108                   ModelCorrespondence {"CIM_MediaAccessDevice.Capabilities"} ]
109               string CapabilityDescriptions[];
110           
111               [Description (
112                   "ErrorMethodology is a free-form string describing "
113                   "the type(s) of error detection and correction supported "
114                   "by this Device.") ]
115               string ErrorMethodology;
116           
117               [Description (      
118                   "A free form string indicating the algorithm or tool used "
119                   "by the device to support compression. "
120                   "If it is not possible or not desired to describe the "
121                   "compression scheme (perhaps because it is not known), "
122                   "recommend using the following words: \"Unknown\" to "
123                   "represent that it is not known whether the device supports "
124                   "compression capabilities or not, \"Compressed\" to represent "
125                   "that the device supports compression capabilities but either "
126                   "its compression scheme is not known or not disclosed, and "
127 karl  1.1         "\"Not Compressed\" to represent that the devices does not "
128                   "support compression capabilities.") ]
129               string CompressionMethod;
130           
131               [Description (
132                   "When the MediaAccessDevice supports multiple individual "
133                   "Media, this property defines the maximum number which can "
134                   "be supported or inserted.") ]
135               uint32 NumberOfMediaSupported;
136           
137               [Description (
138                   "Maximum size, in KBytes, of media supported by this Device. "
139                   "KBytes is interpreted as the number of bytes multiplied by "
140                   "1000 (NOT the number of bytes multiplied by 1024)."),
141                   MappingStrings {"MIF.DMTF|Sequential Access Devices|001.2", 
142                       "MIF.DMTF|Host Disk|001.5"} ]
143               uint64 MaxMediaSize;
144           
145               [Description ("Default block size, in bytes, for this Device."),
146                   Units ("Bytes") ]
147               uint64 DefaultBlockSize;
148 karl  1.1 
149               [Description (
150                   "Maximum block size, in bytes, for media accessed by this "
151                   "Device."),
152                   Units ("Bytes") ]
153               uint64 MaxBlockSize;
154           
155               [Description (
156                   "Minimum block size, in bytes, for media accessed by this "
157                   "Device."),
158                   Units ("Bytes") ]
159               uint64 MinBlockSize;
160           
161               [Description (
162                   "Boolean indicating that the MediaAccessDevice needs cleaning. " 
163                   "Whether manual or automatic cleaning is possible is indicated "
164                   "in the Capabilities array property.") ]
165               boolean NeedsCleaning;
166           
167               [Description (
168                   "True indicates that the media is locked in the Device "
169 karl  1.1         "and can not be ejected. For non-removeable Devices, this "
170                   "value should be true.") ]
171               boolean MediaIsLocked;
172           
173               [Description (
174                   "An enumeration indicating the operational security defined "
175                   "for the MediaAccessDevice. For example, information that "
176                   "the Device is \"Read Only\" (value=4) or \"Boot Bypass\" "
177                   "(value=6) can be described using this property."), 
178                   ValueMap {"1", "2", "3", "4", "5", "6", "7"}, 
179                   Values {"Other", "Unknown", "None", "Read Only", "Locked Out",
180                       "Boot Bypass", "Boot Bypass and Read Only"}, 
181                   MappingStrings {"MIF.DMTF|Disks|003.22"} ]
182               uint16 Security;
183           
184               [Description (
185                   "The date and time on which the Device was last cleaned.") ]
186               datetime LastCleaned;
187           
188               [Description (
189                   "Time in milliseconds to move from the first location on "
190 karl  1.1         "the Media to the location that is furthest with respect to "
191                   "time. For a DiskDrive, this represents full seek + full "
192                   "rotational delay. For TapeDrives, this represents a search "
193                   "from the beginning of the tape to the most physically "
194                   "distant point. (The end of a tape may be at its most "
195                   "physically distant point, but this is not necessarily "
196                   "true.)"), 
197                   Units ("MilliSeconds") ]
198               uint64 MaxAccessTime;
199           
200               [Description (
201                   "The sustained data transfer rate in KB/sec that the "
202                   "Device can read from and write to a Media. This is a "
203                   "sustained, raw data rate. Maximum rates or rates "
204                   "assuming compression should not be reported in this "
205                   "property."), 
206                   Units ("KiloBytes per Second") ]
207               uint32 UncompressedDataRate;
208           
209               [Description (
210                   "Time in milliseconds from 'load' to being able to read "
211 karl  1.1         "or write a Media. For example, for DiskDrives, this is "
212                   "the interval between a disk not spinning to the disk "
213                   "reporting that it is ready for read/write (ie, the disk "
214                   "spinning at nominal speeds). For TapeDrives, this is "
215                   "the time from a Media being injected to reporting that "
216                   "it is ready for an application. This is usually at the "
217                   "tape's BOT area."), 
218                   Units ("MilliSeconds") ]
219               uint64 LoadTime;
220           
221               [Description (
222                   "Time in milliseconds from being able to read or write a "
223                   "Media to its 'unload'. For example, for DiskDrives, "
224                   "this is the interval between a disk spinning at nominal "
225                   "speeds and a disk not spinning. For TapeDrives, this is "
226                   "the time for a Media to go from its BOT to being fully "
227                   "ejected and accessible to a PickerElement or human "
228                   "operator."), 
229                   Units ("MilliSeconds") ]
230               uint64 UnloadTime;
231           
232 karl  1.1     [Description (
233                   "For a MediaAccessDevice that supports removable Media, "
234                   "the number of times that Media have been mounted for "
235                   "data transfer or to clean the Device. For Devices "
236                   "accessing nonremovable Media, such as hard disks, "
237                   "this property is not applicable and should be set to 0."),
238                   Counter ]
239               uint64 MountCount;
240           
241               [Description (
242                   "For a MediaAccessDevice that supports removable Media, "
243                   "the most recent date and time that Media was mounted "
244                   "on the Device. For Devices accessing nonremovable Media, "
245                   "such as hard disks, this property has no meaning and is "
246                   "not applicable.") ]
247               datetime TimeOfLastMount;
248           
249               [Description (
250                   "For a MediaAccessDevice that supports removable Media, "
251                   "the total time (in seconds) that Media have been mounted "
252                   "for data transfer or to clean the Device. For Devices "
253 karl  1.1         "accessing nonremovable Media, such as hard disks, "
254                   "this property is not applicable and should be set to 0.") ]
255               uint64 TotalMountTime;
256           
257               [Description (
258                   "Defines 'Units' relative to its use in the property, "
259                   "MaxUnitsBeforeCleaning. This describes the criteria used "
260                   "to determine when the MediaAccessDevice should be cleaned."),
261                   ModelCorrespondence {
262                       "CIM_MediaAccessDevice.MaxUnitsBeforeCleaning",
263                       "CIM_MediaAccessDevice.UnitsUsed"} ]
264               string UnitsDescription;
265               
266               [Description (
267                   "An unsigned integer indicating the maximum 'units' "
268                   "that can be used, with respect to the AccessDevice, "
269                   "before the Device should be cleaned. The property, "
270                   "UnitsDescription, defines how 'units' should be "
271                   "interpreted."),
272                   ModelCorrespondence {
273                       "CIM_MediaAccessDevice.UnitsDescription"} ]
274 karl  1.1     uint64 MaxUnitsBeforeCleaning;
275           
276               [Description (
277                   "An unsigned integer indicating the currently used " 
278                   "'units' of the AccessDevice, helpful to describe "
279                   "when the Device may require cleaning. The property, "
280                   "UnitsDescription, defines how 'units' should be "
281                   "interpreted."),
282                   Gauge,
283                   ModelCorrespondence {
284                       "CIM_MediaAccessDevice.UnitsDescription",
285                       "CIM_MediaAccessDevice.MaxUnitsBeforeCleaning"} ]
286               uint64 UnitsUsed;
287           
288               [Description (
289                   "Method to lock and unlock the media in a removeable Access"
290                   "Device. The method takes one parameter as input - a boolean "
291                   "indicating whether to lock or unlock. TRUE indicates that "
292                   "the media should be locked in the Device, FALSE indicates "
293                   "that the media should be unlocked. The method returns 0 if "
294                   "successful, 1 if not supported, and any other value if an "
295 karl  1.1         "error occurred. The set of possible return codes should be "
296                   "specified in a ValueMap qualifier on the method. The strings "
297                   "to which the ValueMap contents are 'translated' should be "
298                   "specified as a Values array qualifier on the method.") ]
299               uint32 LockMedia (
300                   [IN] 
301                   boolean Lock);
302           };
303           
304           
305           // ===================================================================
306           // DiskDrive
307           // ===================================================================
308           [Version ("2.6.0"), Description (
309               "Capabilities and managment of a DiskDrive, a subtype of "
310               "MediaAccessDevice.") ] 
311           class CIM_DiskDrive : CIM_MediaAccessDevice {
312           };
313           
314           
315           // ===================================================================
316 karl  1.1 // DisketteDrive
317           // ===================================================================
318           [Version ("2.6.0"), Description (
319               "Capabilities and managment of a DisketteDrive, a subtype of "
320               "MediaAccessDevice.") ] 
321           class CIM_DisketteDrive : CIM_MediaAccessDevice {
322           };
323           
324           
325           // ===================================================================
326           // CDROMDrive
327           // ===================================================================
328           [Version ("2.6.0"), Description (
329               "Capabilities and managment of a CDROMDrive, a subtype of "
330               "MediaAccessDevice.") ] 
331           class CIM_CDROMDrive : CIM_MediaAccessDevice {
332           };
333           
334           
335           // ===================================================================
336           // DVDDrive 
337 karl  1.1 // ===================================================================
338           [Version ("2.6.0"), Description (
339               "Capabilities and management of a DVDDrive, a subtype of "
340               "MediaAccessDevice.") ]
341           class CIM_DVDDrive : CIM_MediaAccessDevice {
342           
343               [Description (
344                   "The CD and DVD formats that are supported by this Device. "
345                   "For example, the Drive may support \"CD-ROM\" and "
346                   "\"DVD-RAM\". In this case, the values 16 and 24 would be "
347                   "written to the array. This property's values align with "
348                   "those defined in PhysicalMedia.MediaType."), 
349                   ValueMap {"0", "1", "16", "17", "18", "19", "22", "23", "24", 
350                       "25", "26", "27", "33", "34", "35", "36", "37", "38", 
351                       "39", "40", "41", "42"}, 
352                   Values {"Unknown", "Other", "CD-ROM", "CD-ROM/XA", 
353                       "CD-I", "CD Recordable", "DVD", "DVD-RW+", 
354                       "DVD-RAM", "DVD-ROM", "DVD-Video", "Divx", "CD-RW", 
355                       "CD-DA", "CD+", "DVD Recordable", "DVD-RW", 
356                       "DVD-Audio", "DVD-5", "DVD-9", "DVD-10", "DVD-18"},
357                   ModelCorrespondence {"CIM_PhysicalMedia.MediaType"} ]
358 karl  1.1     uint16 FormatsSupported[];
359           };
360           
361           
362           // ===================================================================
363           // WORMDrive
364           // ===================================================================
365           [Version ("2.6.0"), Description (
366               "Capabilities and managment of a WORMDrive, a subtype of "
367               "MediaAccessDevice.") ] 
368           class CIM_WORMDrive : CIM_MediaAccessDevice {
369           };
370           
371           
372           // ===================================================================
373           // MagnetoOpticalDrive
374           // ===================================================================
375           [Version ("2.6.0"), Description (
376               "Capabilities and managment of a MagnetoOpticalDrive, a "
377               "subtype of MediaAccessDevice.") ] 
378           class CIM_MagnetoOpticalDrive : CIM_MediaAccessDevice {
379 karl  1.1 };
380           
381           
382           // ===================================================================
383           // TapeDrive
384           // ===================================================================
385           [Version ("2.6.0"), Description (
386               "Capabilities and managment of a TapeDrive, a subtype of "
387               "MediaAccessDevice.") ] 
388           class CIM_TapeDrive : CIM_MediaAccessDevice {
389           
390               [Description (
391                   "EOTWarningZoneSize indicates the size, in bytes, of the "
392                   "area designated as 'end of tape'. Access in this area "
393                   "generates an 'end of tape' warning."),
394                   Units ("Bytes") ]
395               uint32 EOTWarningZoneSize;
396           
397               [Description (
398                   "Maximum partition count for the TapeDrive.") ]
399               uint32 MaxPartitionCount;
400 karl  1.1 
401               [Description (
402                   "Padding indicates the number of bytes inserted between "
403                   "blocks on a tape Media."),
404                   Units ("Bytes") ]
405               uint32 Padding;
406           
407               [Description (
408                   "Time in milliseconds to move from the most physically distant "
409                   "point on the tape to the beginning."), 
410                   Units ("MilliSeconds") ]
411               uint64 MaxRewindTime;
412           };
413           
414           
415           // ===================================================================
416           // MediaAccessStatInfo
417           // ===================================================================
418           [Version ("2.6.0"), Description (
419               "Statistics related to reading and writing at a specific "
420               "MediaAccessDevice, or for a specific StorageExtent. Although "
421 karl  1.1     "the same class is used to represent this data, at the instance "
422               "level the object holds information for the MediaAccessDevice "
423               "(independent of the StorageExtent), OR for the Extent "
424               "(independent of its AccessDevice). Note that this class "
425               "models the same properties as MediaAccessStatData. The latter, "
426               "however, uses the simplified key mechanisms of the "
427               "StatisticalData class.") ]
428           class CIM_MediaAccessStatInfo : CIM_DeviceStatisticalInformation {
429           
430               [Counter, Description ("The number of attempted read operations.") ]
431               uint64 ReadOperations;
432           
433               [Counter, 
434                    Description ("The number of unrecoverable read operations.") ]
435               uint64 UnrecoverableReadOperations;
436           
437               [Counter, 
438                   Description ("The number of attempted write operations.") ]
439               uint64 WriteOperations;
440           
441               [Counter, 
442 karl  1.1         Description ("The number of unrecoverable write operations.") ]
443               uint64 UnrecoverableWriteOperations;
444           
445               [Counter, Description ("The number of recovered read operations.") ]
446               uint64 RecoveredReadOperations;
447           
448               [Counter, Description ("The number of recovered write operations.") ]
449               uint64 RecoveredWriteOperations;
450           
451               [Counter, Description ("The number of recovered seek operations.") ]
452               uint64 RecoveredSeekOperations;
453           
454               [Counter, 
455                   Description ("The number of unrecoverable seek operations.") ]
456               uint64 UnrecoverableSeekOperations;
457           
458               [Description (
459                   "Method to reset the statistical counters. The method takes "
460                   "one parameter as input - an integer indicating which counter "
461                   "to reset. For this input parameter, 0 indicates all, 1-2 and "
462                   "5 reset the 'read operation'-related counters, 3-4 and 6 "
463 karl  1.1         "reset the 'write operation'-related counters, and 7-8 reset "
464                   "the seek-related counters. The method returns 0 if "
465                   "successful, 1 if not supported, and any other value if an "
466                   "error occurred. A method is specified so that the Device's "
467                   "instrumentation can also reset its internal processing and "
468                   "counters. \n"
469                   "In a subclass, the set of possible return codes should be "
470                   "specified in a ValueMap qualifier on the method. The strings "
471                   "to which the ValueMap contents are 'translated' can be "
472                   "specified as a Values array qualifier.") ]
473               uint32 ResetCounter (
474                   [IN, 
475                       ValueMap {"0", "1", "2", "3", "4", "5", "6", "7", "8"},
476                       Values {"All", "Read Operations", 
477                           "Unrecoverable Read Operations", "Write Operations", 
478                           "Unrecoverable Write Operations", 
479                           "Recovered Read Operations", 
480                           "Recovered Write Operations", "Recovered Seeks", 
481                           "Unrecoverable Seeks"} ] 
482                   uint16 SelectedCounter);
483           };
484 karl  1.1 
485           
486           // ===================================================================
487           // MediaAccessStatData
488           // ===================================================================
489           [Experimental, Version ("2.7.0"), Description (
490               "Statistics related to reading and writing at a specific "
491               "MediaAccessDevice, or for a specific StorageExtent. The same "
492               "class is used to represent this data - whether for the "
493               "MediaAccessDevice (independent of the StorageExtent), OR for "
494               "the Extent (independent of its AccessDevice). The element "
495               "whose statistics are described is associated using the "
496               "relationship, ElementStatisticalData. Note that this class "
497               "models the same properties as MediaAccessStatInfo. This class, "
498               "however, uses the simplified key mechanisms of its "
499               "superclass, StatisticalData.") ]
500           class CIM_MediaAccessStatData : CIM_StatisticalData {
501           
502               [Counter, Description ("The number of attempted read operations.") ]
503               uint64 ReadOperations;
504           
505 karl  1.1     [Counter, 
506                   Description ("The number of unrecoverable read operations.") ]
507               uint64 UnrecoverableReadOperations;
508           
509               [Counter, Description ("The number of attempted write operations.") ]
510               uint64 WriteOperations;
511           
512               [Counter, 
513                   Description ("The number of unrecoverable write operations.") ]
514               uint64 UnrecoverableWriteOperations;
515           
516               [Counter, Description ("The number of recovered read operations.") ]
517               uint64 RecoveredReadOperations;
518           
519               [Counter, Description ("The number of recovered write operations.") ]
520               uint64 RecoveredWriteOperations;
521           
522               [Counter, Description ("The number of recovered seek operations.") ]
523               uint64 RecoveredSeekOperations;
524           
525               [Counter, 
526 karl  1.1         Description ("The number of unrecoverable seek operations.") ]
527               uint64 UnrecoverableSeekOperations;
528           };
529           
530           
531           // ===================================================================
532           // end of file
533           // ===================================================================

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2