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

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

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2