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

  1 karl  1.1 // ===================================================================
  2           // Title:  Device Elements
  3           // $State: Preliminary $
  4           // $Date: 2004/05/27 17:21:27 $
  5           // $Source: /home/dmtf2/dotorg/var/cvs/repositories/dev/Schema/MOF/Device_DeviceElements.mof,v $
  6           // $Revision: 1.3 $
  7           // ===================================================================
  8           //#pragma inLine ("Includes/copyright.inc")
  9           // Copyright 1998-2004 Distributed Management Task Force, Inc. (DMTF).
 10           // All rights reserved.
 11           // DMTF is a not-for-profit association of industry members dedicated
 12           // to promoting enterprise and systems management and interoperability.
 13           // DMTF specifications and documents may be reproduced for uses
 14           // consistent with this purpose by members and non-members,
 15           // provided that correct attribution is given.
 16           // As DMTF specifications may be revised from time to time,
 17           // the particular version and release date should always be noted.
 18           // 
 19           // Implementation of certain elements of this standard or proposed
 20           // standard may be subject to third party patent rights, including
 21           // provisional patent rights (herein "patent rights"). DMTF makes
 22 karl  1.1 // no representations to users of the standard as to the existence
 23           // of such rights, and is not responsible to recognize, disclose, or
 24           // identify any or all such third party patent right, owners or
 25           // claimants, nor for any incomplete or inaccurate identification or
 26           // disclosure of such rights, owners or claimants. DMTF shall have no
 27           // liability to any party, in any manner or circumstance, under any
 28           // legal theory whatsoever, for failure to recognize, disclose, or
 29           // identify any such third party patent rights, or for such party's
 30           // reliance on the standard or incorporation thereof in its product,
 31           // protocols or testing procedures. DMTF shall have no liability to
 32           // any party implementing such standard, whether such implementation
 33           // is foreseeable or not, nor to any patent owner or claimant, and shall
 34           // have no liability or responsibility for costs or losses incurred if
 35           // a standard is withdrawn or modified after publication, and shall be
 36           // indemnified and held harmless by any party implementing the
 37           // standard from any and all claims of infringement by a patent owner
 38           // for such implementations.
 39           // 
 40           // For information about patents held by third-parties which have
 41           // notified the DMTF that, in their opinion, such patent may relate to
 42           // or impact implementations of DMTF standards, visit
 43 karl  1.1 // http://www.dmtf.org/about/policies/disclosures.php.
 44           //#pragma inLine
 45           // ===================================================================
 46           // Description: The Device Model extends the management concepts that
 47           //              are related to LogicalDevices. This file defines the
 48           //              basic concepts that generally apply to all devices,
 49           //              such as error statistics and connections between
 50           //              devices.
 51           // 
 52           //              The object classes below are listed in an order that
 53           //              avoids forward references. Required objects, defined
 54           //              by other working groups, are omitted.
 55           // ==================================================================
 56           // Change Log for v2.9 Preliminary
 57           // CR1269 - SCSI device types used for management need a CIM analog
 58           // 
 59           // Change Log for v2.8 Final
 60           // CR1202 - Remove Experimental Qualifiers
 61           // CR1223 - SysDev Omnibus CR - Minor MOF corrections.
 62           // 
 63           // Change Log for v2.8 Preliminary
 64 karl  1.1 // CR943  - Move error code data from LogicalDevice to
 65           //          DeviceErrorCountData
 66           // CR1049 - Add DeviceSoftwareIdentity
 67           // CR1092 - Move DeviceSoftwareIdentity to Core28_Device.mof
 68           // 
 69           // Change Log for v2.7 Final
 70           // CR942 - Rename DeviceErrorCountData to DeviceErrorData.
 71           // CR970 - Removal of the Experimental qualifier.
 72           // 
 73           // Change Log for v2.7
 74           // CR621 - Add PackageDependency
 75           // CR622 - Fix the DMI mapping string to include the attribute number
 76           //         DeviceErrorCounts.CriticalErrorCount, .MajorErrorCount, &
 77           //         .WarningCount
 78           // CR721 - Add DeviceErrorCountData that is part of the new statistics
 79           //         hierarchy
 80           // ==================================================================
 81           
 82           #pragma locale ("en_US")
 83           
 84           
 85 karl  1.1 // ===================================================================
 86           // DeviceConnection
 87           // ===================================================================
 88              [Association, Version ( "2.6.0" ), Description (
 89                  "The DeviceConnection relationship indicates that two or more "
 90                  "Device are connected together.")]
 91           class CIM_DeviceConnection : CIM_Dependency {
 92           
 93                 [Override ( "Antecedent" ), Description (
 94                     "A LogicalDevice.")]
 95              CIM_LogicalDevice REF Antecedent;
 96           
 97                 [Override ( "Dependent" ), Description (
 98                     "A second LogicalDevice connected to the Antecedent Device.")]
 99              CIM_LogicalDevice REF Dependent;
100           
101                 [Description (
102                     "When several bus and/or connection speeds are possible, the "
103                     "NegotiatedSpeed property defines the one in use between the "
104                     "Devices. Speed is specified in bits per second. If "
105                     "connection or bus speeds are not negotiated, or if this "
106 karl  1.1           "information is not available/important to Device "
107                     "management, the property should be set to 0."), 
108                  Units ( "Bits per Second" ), 
109                  MappingStrings { "MIF.DMTF|Bus Port Association|001.2" }]
110              uint64 NegotiatedSpeed;
111           
112                 [Description (
113                     "When several bus and/or connection data widths are "
114                     "possible, the NegotiatedDataWidth property defines the one "
115                     "in use between the Devices. Data width is specified in "
116                     "bits. If data width is not negotiated, or if this "
117                     "information is not available/important to Device "
118                     "management, the property should be set to 0."), 
119                  Units ( "Bits" ), 
120                  MappingStrings { "MIF.DMTF|Bus Port Association|001.3" }]
121              uint32 NegotiatedDataWidth;
122           };
123           
124           
125           // ===================================================================
126           // DeviceIdentity
127 karl  1.1 // ===================================================================
128              [Association, Version ( "2.6.0" ), Description (
129                  "CIM_DeviceIdentity indicates that two LogicalDevices represent "
130                  "different aspects of the same underlying entity. This "
131                  "association refines the CIM_LogicalIdentity superclass by "
132                  "restricting it to the Device level and defining its use in "
133                  "well understood scenarios. One of these scenarios is to "
134                  "represent that a Device is both a 'bus' entity and a "
135                  "'functional' entity. For example, a Device could be both a PCI "
136                  "Device (or a USB Device), as well as a CIM_Keyboard. The other "
137                  "scenario is where a Device plays multiple functional roles "
138                  "that can not be distinguished by their hardware realization "
139                  "alone. For example, a Fibre Channel adapter might have aspects "
140                  "of both a NetworkAdapter and a SCSIController.")]
141           class CIM_DeviceIdentity : CIM_LogicalIdentity {
142           
143                 [Override ( "SystemElement" ), Description (
144                     "SystemElement represents one aspect of the Device.")]
145              CIM_LogicalDevice ref SystemElement;
146           
147                 [Override ( "SameElement" ), Description (
148 karl  1.1           "SameElement represents an alternate aspect of the System "
149                     "entity.")]
150              CIM_LogicalDevice ref SameElement;
151           };
152           
153           
154           // ==================================================================
155           // PackageDependency
156           // ==================================================================
157              [Association, Version ( "2.6.0" ), Description (
158                  "A LogicalDevice is installed in a Package such as a Chassis or "
159                  "a Rack, not for a specific Device, but to function with the "
160                  "Package in general. This relationship is described by the "
161                  "PackageDependency association.")]
162           class CIM_PackageDependency : CIM_Dependency {
163           
164                 [Override ( "Antecedent" ), Description (
165                     "The Logical Device for the Package.")]
166              CIM_LogicalDevice REF Antecedent;
167           
168                 [Override ( "Dependent" ), Description (
169 karl  1.1           "The PhysicalPackage whose environment is affected.")]
170              CIM_PhysicalPackage REF Dependent;
171           };
172           
173           
174           // ===================================================================
175           // DeviceSoftware
176           // ===================================================================
177              [Association, Version ( "2.6.0" ), Description (
178                  "The DeviceSoftware relationship identifies any software that "
179                  "is associated with a Device - such as drivers, configuration "
180                  "or application software, or firmware.")]
181           class CIM_DeviceSoftware : CIM_Dependency {
182           
183                 [Override ( "Antecedent" ), Description (
184                     "The SoftwareElement.")]
185              CIM_SoftwareElement REF Antecedent;
186           
187                 [Override ( "Dependent" ), Description (
188                     "The LogicalDevice that requires or uses the software.")]
189              CIM_LogicalDevice REF Dependent;
190 karl  1.1 
191                 [Description (
192                     "An enumerated integer to indicate the role this software "
193                     "plays in regards to its associated Device. For example, "
194                     "this software could be instrumentation (value=5) or "
195                     "firmware (6)."), 
196                  ValueMap { "0", "1", "2", "3", "4", "5", "6", "7", "8" }, 
197                  Values { "Unknown", "Other", "Driver", "Configuration Software",
198                     "Application Software", "Instrumentation", "Firmware",
199                     "BIOS", "Boot ROM" }, 
200                  MappingStrings { "MIF.DMTF|SubComponent Software|001.2" }, 
201                  ModelCorrespondence { "CIM_DeviceSoftware.PurposeDescription" }]
202              uint16 Purpose;
203           
204                 [Description (
205                     "A free-form string to provide more information for the "
206                     "Purpose property, e.g. \"Application Software\"."), 
207                  ModelCorrespondence { "CIM_DeviceSoftware.Purpose" }]
208              string PurposeDescription;
209           
210                 [Description (
211 karl  1.1           "Boolean indicating that the software is 'burned into' or "
212                     "otherwise located on the hardware of the LogicalDevice.")]
213              boolean LoadedOnDevice;
214           
215                 [Description (
216                     "Boolean indicating whether the software is upgradeable, "
217                     "when it is LoadedOnDevice. Software that is loaded as part "
218                     "of the OperatingSystem is typically changeable and "
219                     "upgradeable. However, when DeviceSoftware is burned into "
220                     "EEPROM or a chip that Realizes the LogicalDevice, then it "
221                     "may not be upgradeable. This property indicates the ability "
222                     "to update and upgrade DeviceSoftware.")]
223              boolean UpgradeableOnDevice;
224           };
225           
226           
227           // ==================================================================
228           // DeviceErrorCounts
229           // ==================================================================
230              [Version ( "2.7.0" ), Description (
231                  "DeviceErrorCounts is a statistical class containing error- "
232 karl  1.1        "related counters for a LogicalDevice. The types of errors are "
233                  "as defined by CCITT (Rec X.733) and ISO (IEC 10164-4). Note "
234                  "that the CIM_DeviceErrorCountData class uses a simplified "
235                  "naming/identity algorithm as compared to this class. "
236                  "DeviceErrorCounts is not deprecated since its naming algorithm "
237                  "is still in use in various implementations.")]
238           class CIM_DeviceErrorCounts : CIM_StatisticalInformation {
239           
240                 [Key, Propagated ( "CIM_LogicalDevice.SystemCreationClassName" ), 
241                  Description (
242                     "The scoping System's CreationClassName."), 
243                  MaxLen ( 256 )]
244              string SystemCreationClassName;
245           
246                 [Key, Propagated ( "CIM_LogicalDevice.SystemName" ), 
247                  Description (
248                     "The scoping System's Name."), 
249                  MaxLen ( 256 )]
250              string SystemName;
251           
252                 [Key, Propagated ( "CIM_LogicalDevice.CreationClassName" ), 
253 karl  1.1        Description (
254                     "The scoping Device's CreationClassName."), 
255                  MaxLen ( 256 )]
256              string DeviceCreationClassName;
257           
258                 [Key, Propagated ( "CIM_LogicalDevice.DeviceID" ), Description (
259                     "The scoping Device's ID."), 
260                  MaxLen ( 64 )]
261              string DeviceID;
262           
263                 [Key, Override ( "Name" ), Description (
264                     "The inherited Name serves as part of the key for the "
265                     "DeviceErrorCounts instance. The object is scoped by the "
266                     "LogicalDevice to which the statistics apply."), 
267                  MaxLen ( 256 )]
268              string Name;
269           
270                 [Description (
271                     "Count of the indeterminate errors."), 
272                  Counter]
273              uint64 IndeterminateErrorCount;
274 karl  1.1 
275                 [Description (
276                     "Count of the critical errors."), 
277                  Counter, 
278                  MappingStrings { "MIF.DMTF|Operational State|006.7" }]
279              uint64 CriticalErrorCount;
280           
281                 [Description (
282                     "Count of the major errors."), 
283                  Counter, 
284                  MappingStrings { "MIF.DMTF|Operational State|006.8" }]
285              uint64 MajorErrorCount;
286           
287                 [Description (
288                     "Count of the minor errors."), 
289                  Counter]
290              uint64 MinorErrorCount;
291           
292                 [Description (
293                     "Count of the warnings."), 
294                  Counter, 
295 karl  1.1        MappingStrings { "MIF.DMTF|Operational State|006.9" }]
296              uint64 WarningCount;
297           
298                 [Description (
299                     "Method to reset the error and warning counters. The method "
300                     "takes one parameter as input - an integer indicating which "
301                     "counter to reset. For this input parameter, 0 indicates "
302                     "all, 1 indicates a reset of the indeterminate error "
303                     "counter, 2 the critical error counter, 3 the major error "
304                     "counter, 4 the minor error counter and 5 the warning "
305                     "counter. The method returns 0 if successful, 1 if not "
306                     "supported, and any other value if an error occurred. A "
307                     "method is specified so that the LogicalDevice's "
308                     "instrumentation, which tabulates the errors and warnings, "
309                     "can also reset its internal processing and counters. \n"
310                     "In a subclass, the set of possible return codes could be "
311                     "specified, using a ValueMap qualifier on the method. The "
312                     "strings to which the ValueMap contents are 'translated' may "
313                     "also be specified in the subclass as a Values array "
314                     "qualifier.")]
315              uint32 ResetCounter ( 
316 karl  1.1          [IN, Description (
317                        "The counter to reset."), 
318                     ValueMap { "0", "1", "2", "3", "4", "5" }, 
319                     Values { "All", "Indeterminate Error Counter",
320                        "Critical Error Counter", "Major Error Counter",
321                        "Minor Error Counter", "Warning Counter" }]
322                 uint16 SelectedCounter); 
323           };
324           
325           
326           // ==================================================================
327           // ErrorCountersForDevice
328           // ==================================================================
329              [Association, Version ( "2.6.0" ), Description (
330                  "ErrorCountersForDevice relates the DeviceErrorCounts class to "
331                  "the LogicalDevice to which it applies.")]
332           class CIM_ErrorCountersForDevice : CIM_Statistics {
333           
334                 [Override ( "Stats" ), Weak, Description (
335                     "The statistical object - in this case, the error counter "
336                     "class.")]
337 karl  1.1    CIM_DeviceErrorCounts REF Stats;
338           
339                 [Override ( "Element" ), Min ( 1 ), Max ( 1 ), Description (
340                     "The Device to which the error counters apply.")]
341              CIM_LogicalDevice REF Element;
342           };
343           
344           
345           // ==================================================================
346           // DeviceErrorData
347           // ==================================================================
348              [Version ( "2.8.0" ), Description (
349                  "DeviceErrorData is a statistical class containing error- "
350                  "related counters for a LogicalDevice. The types of errors are "
351                  "as defined by CCITT (Rec X.733) and ISO (IEC 10164-4). The "
352                  "element whose statistics are described is associated using the "
353                  "relationship, ElementStatisticalData. Note that this class "
354                  "uses a simplified identity/naming algorithm over "
355                  "CIM_DeviceErrorCounts.")]
356           class CIM_DeviceErrorData : CIM_StatisticalData {
357           
358 karl  1.1       [Description (
359                     "Count of the indeterminate errors."), 
360                  Counter]
361              uint64 IndeterminateErrorCount;
362           
363                 [Description (
364                     "Count of the critical errors."), 
365                  Counter, 
366                  MappingStrings { "MIF.DMTF|Operational State|006.7" }]
367              uint64 CriticalErrorCount;
368           
369                 [Description (
370                     "Count of the major errors."), 
371                  Counter, 
372                  MappingStrings { "MIF.DMTF|Operational State|006.8" }]
373              uint64 MajorErrorCount;
374           
375                 [Description (
376                     "Count of the minor errors."), 
377                  Counter]
378              uint64 MinorErrorCount;
379 karl  1.1 
380                 [Description (
381                     "Count of the warnings."), 
382                  Counter, 
383                  MappingStrings { "MIF.DMTF|Operational State|006.9" }]
384              uint64 WarningCount;
385           
386                 [Description (
387                     "LastErrorCode captures the last error code reported by the "
388                     "LogicalDevice. While the device is in this error condition, "
389                     "then the LogicalDevice's OperationalStatus should not "
390                     "reflect an 'Okay' status. Once this error condition is "
391                     "cleared, then the LogicalDevice's OperationalStatus should "
392                     "report an 'Okay' status.")]
393              string LastErrorCode;
394           
395                 [Description (
396                     "ErrorDescription is a free-form string supplying more "
397                     "information about the error recorded in LastErrorCode, and "
398                     "information on any corrective actions that may be taken.")]
399              string ErrorDescription;
400 karl  1.1 
401           };
402           
403           // ===================================================================
404           // SCSIArbitraryLogicalUnit
405           // ===================================================================
406              [Experimental, Version ( "2.8.1000" ), Description (
407                  "SCSIArbitraryLogicalUnit represents an element that is "
408                  "addressed as a device, but is not accurately modeled by some "
409                  "other LogicalDevice subclass (like TapeDrive or "
410                  "StorageVolume). One common use is 'control devices' that "
411                  "provide management rather than I/O functionality. For example, "
412                  "SCSI defines this behavior for Enclosure Services and SCSI "
413                  "Controller devices.")]
414           class CIM_SCSIArbitraryLogicalUnit : CIM_LogicalDevice {
415           
416                 [Required, Description (
417                     "The type of the device. For SCSI devices, this is related "
418                     "to the peripheral device type returned in bits 0 to 4 of "
419                     "byte zero of the inquiry response. Note that 'Direct "
420                     "Access' is included to model the common behavior of using a "
421 karl  1.1           "zero-length volume for in-band management of RAID arrays."), 
422                  ValueMap { "0", "1", "2", "3", "4", "5", "6" }, 
423                  Values { "Unknown", "Other", "Direct Access", "SCSI SCC Device",
424                     "SCSI SES", "SCSI ADI", "SCSI Well Known Logical Unit" }, 
425                  MappingStrings { "ANSI|T10|SCSI SPC|Peripheral Device Type" }, 
426                  ModelCorrespondence { 
427                     "CIM_SCSIArbitraryLogicalUnit.OtherDeviceType" }]
428              uint16 DeviceType;
429           
430                 [Description (
431                     "A string describing the device type if DeviceType is set to "
432                     "1 (\"Other\")."), 
433                  ModelCorrespondence { "CIM_SCSIArbitraryLogicalUnit.DeviceType" 
434                     }]
435              string OtherDeviceType;
436           };
437           
438           // ===================================================================
439           // end of file
440           // ===================================================================

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2