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

  1 tony  1.1 // ===================================================================
  2           // Title:       Device Memory 2.8
  3           // Filename:    Device28_Memory.mof
  4           // Version:     2.8
  5           // Release:     Preliminary
  6           // Date:        08/22/2003
  7           // ===================================================================
  8           // Copyright 1998-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 tony  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 tony  1.1 // ===================================================================
 44           // Description: The Device Model extends the management concepts that
 45           //              are related to LogicalDevices. This file defines the
 46           //              concepts behind managing memory.
 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.8 Preliminary
 53           // CR941 - Deprecate CacheMemory, VolatileStorage and NonVolatileStorage
 54           //         Promote AssociatedMemory to LogicalELement
 55           //         Add AssociatedCacheMemory association
 56           //         Add Volatile parameter to Memory
 57           //         Promote BIOSLoadedInNV.Antecendent to CIM_Memory
 58           //         Deprecate CIM_ComputerSystemMemory
 59           // CR1097 - Cleanup of CIM_MemoryError.ErrorAccess
 60           // 
 61           // Change Log for v2.7
 62           // CR622 - Fix the DMI mapping string to include the attribute number
 63           //         for Memory.ErrorInfo, .CorrectableError, .ErrorAccess,
 64 tony  1.1 //           .ErrorTransferSize, .ErrorData, .ErrorAddress,
 65           //           .ErrorResolution & .AdditionalErrorData,
 66           //         VolatileStorage.Cacheable & .CacheType,
 67           //         CacheMemory.Level, .WritePolicy, .CacheType, .LineSize,
 68           //           .ReplacementPolicy, .ReadPolicy, .FlushTimer, &
 69           //           .Associativity
 70           // CR771 - Add the Composition qualifer to ComputerSystemMemory
 71           // ==================================================================
 72           
 73           #pragma locale ("en_US")
 74           
 75           
 76           // ===================================================================
 77           // Memory
 78           // ===================================================================
 79              [Version ("2.7.1000"), Description (
 80                  "Capabilities and management of Memory-related LogicalDevices.") ]
 81           class CIM_Memory : CIM_StorageExtent {
 82           
 83                 [Experimental, Description (
 84                     "Volatile is a property that indicates whether this memory "
 85 tony  1.1           "is volatile or not.") ]
 86              boolean Volatile;
 87           
 88                 [Override ("ErrorMethodology"), Description (
 89                     "ErrorMethodology for Memory is a string property that "
 90                     "indicates whether parity or CRC algorithms, ECC or other "
 91                     "mechanisms are used.  Details on the algorithm can also be "
 92                     "supplied."), 
 93                  MappingStrings {"MIF.DMTF|Physical Memory Array|001.7"} ]
 94              string ErrorMethodology;
 95           
 96                 [Description (
 97                     "The beginning address, referenced by an application or "
 98                     "operating system and mapped by a memory controller, for "
 99                     "this Memory object.  The starting address is specified in "
100                     "KBytes."), 
101                  Units ("KiloBytes"), 
102                  MappingStrings { "MIF.DMTF|Memory Array Mapped Addresses|001.3",
103                     "MIF.DMTF|Memory Device Mapped Addresses|001.4"} ]
104              uint64 StartingAddress;
105           
106 tony  1.1       [Description (
107                     "The ending address, referenced by an application or "
108                     "operating system and mapped by a memory controller, for "
109                     "this Memory object.  The ending address is specified in "
110                     "KBytes."), 
111                  Units ("KiloBytes"), 
112                  MappingStrings { "MIF.DMTF|Memory Array Mapped Addresses|001.4",
113                     "MIF.DMTF|Memory Device Mapped Addresses|001.5"} ]
114              uint64 EndingAddress;
115           
116                 [Deprecated {"CIM_MemoryError.ErrorInfo"}, Description (
117                     "An integer enumeration describing the type of error that "
118                     "occurred most recently.  For example, single (value=6) or "
119                     "double bit errors (7) can be specified using this "
120                     "property.  The values, 12-14, are undefined in the CIM "
121                     "Schema since in DMI, they mix the semantics of the type of "
122                     "error and whether it was correctable or not.  The latter is "
123                     "indicated in the property, CorrectableError."), 
124                  ValueMap {"1", "2", "3", "4", "5", "6", "7", "8", "9", "10",
125                     "11", "12", "13", "14"}, 
126                  Values {"Other", "Unknown", "OK", "Bad Read", "Parity Error",
127 tony  1.1           "Single-Bit Error", "Double-Bit Error", "Multi-Bit Error",
128                     "Nibble Error", "Checksum Error", "CRC Error", "Undefined",
129                     "Undefined", "Undefined"}, 
130                  MappingStrings {"MIF.DMTF|Memory Device|005.12",
131                     "MIF.DMTF|Physical Memory Array|001.8"}, 
132                  ModelCorrespondence {"CIM_Memory.OtherErrorDescription"} ]
133              uint16 ErrorInfo;
134           
135                 [Deprecated {"CIM_MemoryError.OtherErrorDescription"}, 
136                  Description (
137                     "Free form string providing more information if the Error "
138                     "Type property is set to 1, \"Other\".  If not set to 1, "
139                     "this string has no meaning."), 
140                  ModelCorrespondence {"CIM_Memory.ErrorInfo"} ]
141              string OtherErrorDescription;
142           
143                 [Deprecated {"CIM_MemoryError.CorrectableError"}, Description (
144                     "Boolean indicating that the most recent error was "
145                     "correctable.  If the ErrorInfo property is equal to 3, "
146                     "\"OK\", then this property has no meaning."), 
147                  MappingStrings {"MIF.DMTF|Physical Memory Array|001.8"} ]
148 tony  1.1    boolean CorrectableError;
149           
150                 [Deprecated {"CIM_MemoryError.ErrorTime"}, Description (
151                     "The time that the last memory error occurred.  The type of "
152                     "error is described by the ErrorInfo property.  If the Error "
153                     "Info property is equal to 3, \"OK\", then this property has "
154                     "no meaning.") ]
155              datetime ErrorTime;
156           
157                 [Deprecated {"CIM_MemoryError.ErrorAccess"}, Description (
158                     "An integer enumeration indicating the memory access "
159                     "operation that caused the last error.  The type of error is "
160                     "described by the ErrorInfo property.  If the ErrorInfo "
161                     "property is equal to 3, \"OK\", then this property has no "
162                     "meaning."), 
163                  ValueMap {"1", "2", "3", "4", "5"}, 
164                  Values {"Other", "Unknown", "Read", "Write", "Partial Write"}, 
165                  MappingStrings {"MIF.DMTF|Physical Memory Array|001.10"} ]
166              uint16 ErrorAccess;
167           
168                 [Deprecated {"CIM_MemoryError.ErrorTransferSize"}, Description (
169 tony  1.1           "The size of the data transfer in bits that caused the last "
170                     "error.  0 indicates no error.  If the ErrorInfo property is "
171                     "equal to 3, \"OK\", then this property should be set to 0."), 
172                  Units ("Bits"), 
173                  MappingStrings {"MIF.DMTF|Physical Memory Array|001.11"} ]
174              uint32 ErrorTransferSize;
175           
176                 [Deprecated {"CIM_MemoryError.ErrorData"}, Description (
177                     "Data captured during the last erroneous mebmory access.  "
178                     "The data occupies the first n octets of the array necessary "
179                     "to hold the number of bits specified by the "
180                     "ErrorTransferSize property.  If ErrorTransferSize is 0, "
181                     "then this property has no meaning."), 
182                  OctetString, 
183                  ArrayType ("Indexed"), 
184                  MappingStrings {"MIF.DMTF|Physical Memory Array|001.12"} ]
185              uint8 ErrorData[64];
186           
187                 [Deprecated {"CIM_MemoryError.ErrorDataOrder"}, Description (
188                     "The ordering for data stored in the ErrorData property.  "
189                     "\"Least Significant Byte First\" (value=1) or \"Most "
190 tony  1.1           "Significant Byte First\" (2) can be specified.  If "
191                     "ErrorTransferSize is 0, then this property has no meaning."), 
192                  ValueMap {"0", "1", "2"}, 
193                  Values {"Unknown", "Least Significant Byte First",
194                      "Most Significant Byte First"} ]
195              uint16 ErrorDataOrder;
196           
197                 [Deprecated {"CIM_MemoryError.StartingAddress"}, Description (
198                     "Specifies the address of the last memory error.  The type "
199                     "of error is described by the ErrorInfo property.  If the "
200                     "ErrorInfo property is equal to 3, \"OK\", then this "
201                     "property has no meaning."), 
202                  MappingStrings {"MIF.DMTF|Memory Device|005.19",
203                     "MIF.DMTF|Physical Memory Array|001.14"} ]
204              uint64 ErrorAddress;
205           
206                 [Deprecated {"CIM_MemoryError.SystemLevelAddress"}, Description (
207                     "Boolean indicating whether the address information in the "
208                     "property, ErrorAddress, is a system-level address (TRUE) or "
209                     "a physical address (FALSE).  If the ErrorInfo property is "
210                     "equal to 3, \"OK\", then this property has no meaning.") ]
211 tony  1.1    boolean SystemLevelAddress;
212           
213                 [Deprecated {"CIM_MemoryError.ErrorResolution"}, Description (
214                     "Specifies the range, in bytes, to which the last error can "
215                     "be resolved.  For example, if error addresses are resolved "
216                     "to bit 11 (ie, on a typical page basis), then errors can be "
217                     "resolved to 4K boundaries and this property is set to "
218                     "4000.  If the ErrorInfo property is equal to 3, \"OK\", "
219                     "then this property has no meaning."), 
220                  Units ("Bytes"), 
221                  MappingStrings {"MIF.DMTF|Memory Device|005.21",
222                     "MIF.DMTF|Physical Memory Array|001.15"} ]
223              uint64 ErrorResolution;
224           
225                 [Deprecated {"CIM_MemoryError.AdditionalErrorData"}, 
226                  Description (
227                     "An array of octets holding additional error information.  "
228                     "An example is ECC Syndrome or the return of the check bits "
229                     "if a CRC-based ErrorMethodology is used.  In the latter "
230                     "case, if a single bit error is recognized and the CRC "
231                     "algorithm is known, it is possible to determine the exact "
232 tony  1.1           "bit that failed.  This type of data (ECC Syndrome, Check "
233                     "Bit or Parity Bit data, or other vendor supplied "
234                     "information) is included in this field.  If the ErrorInfo "
235                     "property is equal to 3, \"OK\", then AdditionalErrorData "
236                     "has no meaning."), 
237                  OctetString, 
238                  MappingStrings { "MIF.DMTF|Memory Device|005.18",
239                     "MIF.DMTF|Physical Memory Array|001.13"} ]
240              uint8 AdditionalErrorData[64];
241           };
242           
243           
244           // ===================================================================
245           // AssociatedMemory
246           // ===================================================================
247              [Association, Version ("2.7.1000"), Description (
248                  "LogicalElements may have Memory installed on them or otherwise "
249                  "associated with them - such as CacheMemory.  This is made "
250                  "explicit in this association.") ]
251           class CIM_AssociatedMemory : CIM_Dependency {
252           
253 tony  1.1       [Override ("Antecedent"), Description (
254                     "Memory installed on or associated with a Device.") ]
255              CIM_Memory REF Antecedent;
256           
257                 [Override ("Dependent"), Description (
258                     "The LogicalElement.") ]
259              CIM_LogicalElement REF Dependent;
260           };
261           
262           
263           // ===================================================================
264           // MemoryError
265           // ===================================================================
266              [Experimental, Version ("2.7.1000"), Description (
267                  "MemoryError defines a memory space that has errors.  The Key "
268                  "of the class is the StartingAddress of the bytes in error.") ]
269           class CIM_MemoryError : CIM_StorageError {
270           
271                 [Override ("StartingAddress"), Description (
272                     "Specifies the address of the memory error.  The type of "
273                     "error is described by the ErrorInfo property.  If the "
274 tony  1.1           "ErrorInfo property is equal to 3, \"OK\", then this "
275                     "property has no meaning."), 
276                  MappingStrings {"MIF.DMTF|Memory Device|005.19",
277                     "MIF.DMTF|Physical Memory Array|001.14"} ]
278              uint64 StartingAddress;
279           
280                 [Description (
281                     "An integer enumeration describing the type of error that "
282                     "occurred most recently.  For example, single (value=6) or "
283                     "double bit errors (7) can be specified using this "
284                     "property.  The values, 12-14, are undefined in the CIM "
285                     "Schema since in DMI, they mix the semantics of the type of "
286                     "error and whether it was correctable or not.  The latter is "
287                     "indicated in the property, CorrectableError."), 
288                  ValueMap {"0", "1", "2", "3", "4", "5", "6", "7", "8", "9",
289                     "10"}, 
290                  Values {"Unknown", "Other", "OK", "Bad Read", "Parity Error",
291                     "Single-Bit Error", "Double-Bit Error", "Multi-Bit Error",
292                     "Nibble Error", "Checksum Error", "CRC Error"}, 
293                  MappingStrings {"MIF.DMTF|Memory Device|005.12",
294                     "MIF.DMTF|Physical Memory Array|001.8"}, 
295 tony  1.1        ModelCorrespondence {"CIM_Memory.OtherErrorDescription"} ]
296              uint16 ErrorInfo;
297           
298                 [Description (
299                     "Free form string providing more information if the Error "
300                     "Type property is set to 1, \"Other\".  If not set to 1, "
301                     "this string has no meaning."), 
302                  ModelCorrespondence {"CIM_Memory.ErrorInfo"} ]
303              string OtherErrorDescription;
304           
305                 [Description (
306                     "Boolean indicating that the most recent error was "
307                     "correctable.  If the ErrorInfo property is equal to 3, "
308                     "\"OK\", then this property has no meaning."), 
309                  MappingStrings {"MIF.DMTF|Physical Memory Array|001.8"} ]
310              boolean CorrectableError;
311           
312                 [Description (
313                     "The time that the last memory error occurred.  The type of "
314                     "error is described by the ErrorInfo property.  If the Error "
315                     "Info property is equal to 3, \"OK\", then this property has "
316 tony  1.1           "no meaning.") ]
317              datetime ErrorTime;
318           
319                 [Description (
320                     "An integer enumeration indicating the memory access "
321                     "operation that caused the last error.  The type of error "
322                     "MUST be described by the ErrorInfo property.  If the "
323                     "ErrorInfo property is equal to 3, \"OK\", then this "
324                     "property has no meaning."), 
325                  ValueMap {"0", "1", "2", "3", "4"}, 
326                  Values {"Unknown", "Other", "Read", "Write", "Partial Write"}, 
327                  MappingStrings {"MIF.DMTF|Physical Memory Array|001.10"} ]
328              uint16 ErrorAccess;
329           
330                 [Description (
331                     "The size of the data transfer in bits that caused the last "
332                     "error.  0 indicates no error.  If the ErrorInfo property is "
333                     "equal to 3, \"OK\", then this property should be set to 0."), 
334                  Units ("Bits"), 
335                  MappingStrings {"MIF.DMTF|Physical Memory Array|001.11"} ]
336              uint32 ErrorTransferSize;
337 tony  1.1 
338                 [Description (
339                     "Data captured during the last erroneous mebmory access.  "
340                     "The data occupies the first n octets of the array necessary "
341                     "to hold the number of bits specified by the "
342                     "ErrorTransferSize property.  If ErrorTransferSize is 0, "
343                     "then this property has no meaning."), 
344                  OctetString, 
345                  ArrayType ("Indexed"), 
346                  MappingStrings {"MIF.DMTF|Physical Memory Array|001.12"} ]
347              uint8 ErrorData[64];
348           
349                 [Description (
350                     "The ordering for data stored in the ErrorData property.  "
351                     "\"Least Significant Byte First\" (value=1) or \"Most "
352                     "Significant Byte First\" (2) can be specified.  If "
353                     "ErrorTransferSize is 0, then this property has no meaning."), 
354                  ValueMap {"0", "1", "2"}, 
355                  Values {"Unknown", "Least Significant Byte First",
356                      "Most Significant Byte First"} ]
357              uint16 ErrorDataOrder;
358 tony  1.1 
359                 [Description (
360                     "Boolean indicating whether the address information in the "
361                     "property, ErrorAddress, is a system-level address (TRUE) or "
362                     "a physical address (FALSE).  If the ErrorInfo property is "
363                     "equal to 3, \"OK\", then this property has no meaning.") ]
364              boolean SystemLevelAddress;
365           
366                 [Description (
367                     "Specifies the range, in bytes, to which the last error can "
368                     "be resolved.  For example, if error addresses are resolved "
369                     "to bit 11 (ie, on a typical page basis), then errors can be "
370                     "resolved to 4K boundaries and this property is set to "
371                     "4000.  If the ErrorInfo property is equal to 3, \"OK\", "
372                     "then this property has no meaning."), 
373                  Units ("Bytes"), 
374                  MappingStrings {"MIF.DMTF|Memory Device|005.21",
375                     "MIF.DMTF|Physical Memory Array|001.15"} ]
376              uint64 ErrorResolution;
377           
378                 [Description (
379 tony  1.1           "An array of octets holding additional error information.  "
380                     "An example is ECC Syndrome or the return of the check bits "
381                     "if a CRC-based ErrorMethodology is used.  In the latter "
382                     "case, if a single bit error is recognized and the CRC "
383                     "algorithm is known, it is possible to determine the exact "
384                     "bit that failed.  This type of data (ECC Syndrome, Check "
385                     "Bit or Parity Bit data, or other vendor supplied "
386                     "information) is included in this field.  If the ErrorInfo "
387                     "property is equal to 3, \"OK\", then AdditionalErrorData "
388                     "has no meaning."), 
389                  OctetString, 
390                  MappingStrings { "MIF.DMTF|Memory Device|005.18",
391                     "MIF.DMTF|Physical Memory Array|001.13"} ]
392              uint8 AdditionalErrorData[64];
393           };
394           
395           
396           // ===================================================================
397           // ComputerSystemMemory
398           // ===================================================================
399              [Association, Deprecated {"CIM_SystemDevice"}, Aggregation,
400 tony  1.1     Composition, Version ("2.7.1000"), Description (
401                  "The use of this association has be deprecated in lieu of "
402                  "SystemDevice.  Association indicating that memory is installed "
403                  "and required for the UnitaryComputerSystem to operate.  Note "
404                  "that this relationship inherits from the SystemDevice "
405                  "association, and therefore, the Memory StorageExtent is weak "
406                  "to the aggregating UnitaryComputerSystem.") ]
407           class CIM_ComputerSystemMemory : CIM_SystemDevice {
408           
409                 [Deprecated {"SystemDevice.GroupComponent"}, Aggregate,
410                  Override ("GroupComponent"), Min (1), Max (1), Description (
411                     "The UnitaryComputerSystem.") ]
412              CIM_UnitaryComputerSystem REF GroupComponent;
413           
414                 [Deprecated {"SystemDevice.PartComponent"},
415                  Override ("PartComponent"), Description (
416                     "The Memory StorageExtent which is part of the "
417                     "UnitaryComputerSystem.") ]
418              CIM_Memory REF PartComponent;
419           };
420           
421 tony  1.1 
422           // ===================================================================
423           // AssociatedProcessorMemory
424           // ===================================================================
425              [Association, Version ("2.6.0"), Description (
426                  "Associates the Processor and system Memory, or a Processor's "
427                  "Cache.") ]
428           class CIM_AssociatedProcessorMemory : CIM_AssociatedMemory {
429           
430                 [Override ("Dependent"), Description (
431                     "The Processor that accesses the Memory or uses the Cache.") ]
432              CIM_Processor REF Dependent;
433           
434                 [Description (
435                     "Speed of the bus, in MHertz, between the Processor and "
436                     "Memory."), 
437                  Units ("MegaHertz") ]
438              uint32 BusSpeed;
439           };
440           
441           // ===================================================================
442 tony  1.1 // AssociatedCacheMemory
443           // ===================================================================
444              [Association, Experimental, Version ("2.7.1000"), Description (
445                  "Indicates that the Memory provides Cache to the Dependent "
446                  "Logical Element.") ]
447           class CIM_AssociatedCacheMemory : CIM_AssociatedMemory {
448           
449                 [Description (
450                     "Defines whether this is the Primary (value=3), Secondary "
451                     "(value=4) or Tertiary (value=5) Cache.  Also, \"Other\" "
452                     "(1), \"Unknown\" (0) and \"Not Applicable\" (2) can be "
453                     "defined."), 
454                  ValueMap {"0", "1", "2", "3", "4", "5"}, 
455                  Values {"Unknown", "Other", "Not Applicable", "Primary",
456                     "Secondary", "Tertiary"}, 
457                  MappingStrings {"MIF.DMTF|System Cache|006.2"}, 
458                  ModelCorrespondence { 
459                     "CIM_AssociatedCacheMemory.OtherLevelDescription"} ]
460              uint16 Level;
461           
462                 [Description (
463 tony  1.1           "A string describing the cache level when the Level value is "
464                     "1, \"Other\"."), 
465                  ModelCorrespondence {"CIM_AssociatedCacheMemory.Level"} ]
466              string OtherLevelDescription;
467           
468                 [Description (
469                     "Defines whether this is write-back (value=2) or "
470                     "write-through (value=3) Cache, or whether this information "
471                     "\"Varies with Address\" (4) or is defined individually for "
472                     "each I/O (5).  Also, \"Other\" (1) and \"Unknown\" (0) can "
473                     "be specified."), 
474                  ValueMap {"0", "1", "2", "3", "4", "5"}, 
475                  Values {"Unknown", "Other", "Write Back", "Write Through",
476                     "Varies with Address", "Determination Per I/O"}, 
477                  MappingStrings {"MIF.DMTF|System Cache|006.5"}, 
478                  ModelCorrespondence 
479                     {"CIM_AssociatedCacheMemory.OtherWritePolicyDescription"} ]
480              uint16 WritePolicy;
481           
482                 [Description (
483                     "A string describing the Write Policy when the WritePolicy "
484 tony  1.1           "value is 1, \"Other\"."), 
485                  ModelCorrespondence {"CIM_AssociatedCacheMemory.WritePolicy"} ]
486              string OtherWritePolicyDescription;
487           
488                 [Description (
489                     "Defines whether this is for instruction caching (value=2), "
490                     "data caching (value=3) or both (value=4, \"Unified\").  "
491                     "Also, \"Other\" (1) and \"Unknown\" (0) can be defined."), 
492                  ValueMap {"0", "1", "2", "3", "4"}, 
493                  Values {"Unknown", "Other", "Instruction", "Data", "Unified"}, 
494                  MappingStrings {"MIF.DMTF|System Cache|006.9"}, 
495                  ModelCorrespondence 
496                     {"CIM_AssociatedCacheMemory.OtherCacheTypeDescription"} ]
497              uint16 CacheType;
498           
499                 [Description (
500                     "A string describing the Cache Type when the CacheType value "
501                     "is 1, \"Other\"."), 
502                  ModelCorrespondence {"CIM_AssociatedCacheMemory.CacheType"} ]
503              string OtherCacheTypeDescription;
504           
505 tony  1.1       [Description (
506                     "Size, in bytes, of a single cache bucket or line."), 
507                  Units ("Bytes"), 
508                  MappingStrings {"MIF.DMTF|System Cache|006.10"} ]
509              uint32 LineSize;
510           
511                 [Description (
512                     "An integer enumeration describing the algorithm to "
513                     "determine which cache lines or buckets should be re-used."), 
514                  ValueMap {"0", "1", "2", "3", "4", "5", "6", "7", "8"}, 
515                  Values {"Unknown", "Other", "Unknown",
516                      "Least Recently Used (LRU)", "First In First Out (FIFO)",
517                     "Last In First Out (LIFO)", "Least Frequently Used (LFU)",
518                     "Most Frequently Used (MFU)",
519                      "Data Dependent Multiple Algorithms"}, 
520                  MappingStrings {"MIF.DMTF|System Cache|006.12"}, 
521                  ModelCorrespondence 
522                     {"CIM_AssociatedCacheMemory.OtherReplacementPolicyDescription"} ]
523              uint16 ReplacementPolicy;
524           
525                 [Description (
526 tony  1.1           "A string describing the Cache replacement policy when the "
527                     "ReplacementPolicy value is 1, \"Other\"."), 
528                  ModelCorrespondence 
529                     {"CIM_AssociatedCacheMemory.ReplacementPolicy"} ]
530              string OtherReplacementPolicyDescription;
531           
532                 [Description (
533                     "Policy that shall be employed by the Cache for handling "
534                     "read requests.  For example, \"Read\", \"Read-Ahead\" or "
535                     "both can be specified using the values, 2, 3 or 4, "
536                     "respectively.  If the read policy is determined "
537                     "individually (ie, for each request), then the value 5 "
538                     "(\"Determination per I/O\") should be specified.  \"Other\" "
539                     "(1) and \"Unknown\" (0) are also valid values."), 
540                  ValueMap {"0", "1", "2", "3", "4", "5"}, 
541                  Values {"Unknown", "Other", "Read", "Read-Ahead",
542                      "Read and Read-Ahead", "Determination Per I/O"}, 
543                  MappingStrings {"MIF.DMTF|System Cache|006.13"}, 
544                  ModelCorrespondence 
545                     {"CIM_AssociatedCacheMemory.OtherReadPolicyDescription"} ]
546              uint16 ReadPolicy;
547 tony  1.1 
548                 [Description (
549                     "A string describing the read policy when the ReadPolicy "
550                     "value is 1, \"Other\"."), 
551                  ModelCorrespondence {"CIM_AssociatedCacheMemory.ReadPolicy"} ]
552              string OtherReadPolicyDescription;
553           
554                 [Description (
555                     "Maximum amount of time, in seconds, dirty lines or buckets "
556                     "may remain in the Cache before they are flushed.  A value "
557                     "of zero indicated that a cache flush is not controlled by a "
558                     "flushing timer."), 
559                  Units ("Seconds"), 
560                  MappingStrings {"MIF.DMTF|System Cache|006.14"} ]
561              uint32 FlushTimer;
562           
563                 [Description (
564                     "An integer enumeration defining the system cache "
565                     "associativity.  For example, 5 indicates a fully "
566                     "associative cache."), 
567                  ValueMap {"0", "1", "2", "3", "4", "5", "6", "7"}, 
568 tony  1.1        Values {"Unknown", "Other", "Direct Mapped",
569                      "2-way Set-Associative", "4-way Set-Associative",
570                      "Fully Associative", "8-way Set-Associative",
571                      "16-way Set-Associative"}, 
572                  MappingStrings {"MIF.DMTF|System Cache|006.15"}, 
573                  ModelCorrespondence 
574                     {"CIM_AssociatedCacheMemory.OtherAssociativityDescription"} ]
575              uint16 Associativity;
576           
577                 [Description (
578                     "A string describing the cache associativity when the "
579                     "Associativity value is 1, \"Other\"."), 
580                  ModelCorrespondence {"CIM_AssociatedCacheMemory.Associativity"} ]
581              string OtherAssociativityDescription;
582           };
583           
584           
585           // ===================================================================
586           // NonVolatileStorage
587           // ===================================================================
588              [Deprecated {"CIM_Memory"}, Version ("2.7.1000"), Description (
589 tony  1.1        "This class has been deprecated in favor of CIM_Memory with the "
590                  "volatile parameter set to false.  Capabilities and management "
591                  "of NV Storage.  Non-volatile memory natively includes flash "
592                  "and ROM storage.  In addition, NV memory can be BasedOn "
593                  "VolatileStorage, if the volatile memory is backed by a "
594                  "Battery.  This scenario would be completely described by an "
595                  "instance of the AssociatedBattery relationship, referencing "
596                  "the NonVolatileStorage as the Dependent and the Battery as the "
597                  "Antecedent, and an instance of the BasedOn relationship, "
598                  "referencing the NonVolatileStorage as the Dependent and the "
599                  "VolatileStorage as the Antecedent.") ]
600           class CIM_NonVolatileStorage : CIM_Memory {
601           
602                 [Deprecated {"CIM_Memory.Access"}, Description (
603                     "Indicating that the NV storage is writeable.") ]
604              boolean IsWriteable;
605           
606                 [Deprecated {"no value"}, Description (
607                     "Boolean indicating that at least some portion of the "
608                     "NonVolatileStorage is writeable by applications.") ]
609              boolean ApplicationWriteable;
610 tony  1.1 
611                 [Deprecated {"no value"}, Description (
612                     "When at least some portion of the NonVolatileStorage is "
613                     "writeable (ApplicationWriteable property = TRUE), "
614                     "StartAddress forApplcationWrite indicates the starting "
615                     "address for application data.  If the ApplicationWriteable "
616                     "property is FALSE, this property is undefined."), 
617                  ModelCorrespondence { 
618                     "CIM_NonVolatileStorage.ApplicationWriteable"} ]
619              uint64 StartAddressForApplicationWrite;
620           
621                 [Deprecated {"no value"}, Description (
622                     "When at least some portion of the NonVolatileStorage is "
623                     "writeable (ApplicationWriteable property = TRUE), "
624                     "Application WritableSize indicates the number of bits "
625                     "available for application data.  If the "
626                     "ApplicationWriteable property is FALSE, this property is "
627                     "undefined."), 
628                  Units ("Bits"), 
629                  ModelCorrespondence { 
630                     "CIM_NonVolatileStorage.ApplicationWriteable"} ]
631 tony  1.1    uint64 ApplicationWriteableSize;
632           };
633           
634           // ===================================================================
635           // BIOSLoadedInNV
636           // ===================================================================
637              [Association, Version ("2.7.1000"), Description (
638                  "A link between BIOSElement and Memory where the BIOS is "
639                  "loaded.") ]
640           class CIM_BIOSLoadedInNV : CIM_Dependency {
641           
642                 [Override ("Antecedent"), Description (
643                     "The memory storage.") ]
644              CIM_Memory REF Antecedent;
645           
646                 [Override ("Dependent"), Description (
647                     "The BIOS stored in the memory.") ]
648              CIM_BIOSElement REF Dependent;
649           
650                 [Description (
651                     "The starting address where the BIOS is located in "
652 tony  1.1           "non-volatile storage.") ]
653              uint64 StartingAddress;
654           
655                 [Description (
656                     "The ending address where the BIOS is located in "
657                     "non-volatile storage.") ]
658              uint64 EndingAddress;
659           };
660           
661           
662           
663           // ===================================================================
664           // VolatileStorage
665           // ===================================================================
666              [Deprecated {"CIM_Memory"}, Version ("2.7.1000"), Description (
667                  "Capabilities and management of Volatile Storage.") ]
668           class CIM_VolatileStorage : CIM_Memory {
669           
670                 [Deprecated {"CIM_AssociatedCacheMemory"}, Description (
671                     "Indicates whether this Memory can be cached or not."), 
672                  MappingStrings {"MIF.DMTF|System Resource Memory Info|002.5"} ]
673 tony  1.1    boolean Cacheable;
674           
675                 [Deprecated {"CIM_AssociatedCacheMemory.WritePolicy"}, 
676                  Description (
677                     "An enumeration indicating the cache type that is compatible "
678                     "with this Memory.  For example, 4 indicates write-through "
679                     "cache.  If the Cacheable property is set to false, then "
680                     "this property does not have meaning and should be set to 5, "
681                     "\"Not Applicable\"."), 
682                  ValueMap {"1", "2", "3", "4", "5"}, 
683                  Values {"Other", "Unknown", "Write-Back", "Write-Through",
684                      "Not Applicable"}, 
685                  MappingStrings {"MIF.DMTF|System Resource Memory Info|002.6"} ]
686              uint16 CacheType;
687           };
688           
689           
690           // ===================================================================
691           // CacheMemory
692           // ===================================================================
693              [Deprecated {"CIM_AssociatedCacheMemory"}, Version ("2.7.1000"), 
694 tony  1.1     Description (
695                  "Capabilities and management of Cache Memory.  Cache memory is "
696                  "dedicated or allocated RAM that a Processor searches first for "
697                  "data, before going to 'regular' memory.  CacheMemory is used "
698                  "to speed up the delivery of data to a Processor.  It is "
699                  "usually described by its closeness to the Processor (for "
700                  "example, Primary or Secondary Cache).\n"
701                  "If a DiskDrive includes RAM allocated for holding the disk's "
702                  "most recently read and/or adjacent data (in order to speed up "
703                  "retrieval), this also would be modeled as CacheMemory.  Note "
704                  "that CacheMemory is NOT operating system or application level "
705                  "buffers but actual RAM allocated for caching data for a "
706                  "Processor, from a hard disk, etc.") ]
707           class CIM_CacheMemory : CIM_Memory {
708           
709                 [Deprecated {"CIM_AssociatedCacheMemory.Level"}, Description (
710                     "Defines whether this is the Primary (value=3), Secondary "
711                     "(value=4) or Tertiary (value=5) Cache.  Also, \"Other\" "
712                     "(1), \"Unknown\" (2) and \"Not Applicable\" (6) can be "
713                     "defined."), 
714                  ValueMap {"1", "2", "3", "4", "5", "6"}, 
715 tony  1.1        Values {"Other", "Unknown", "Primary", "Secondary", "Tertiary",
716                     "Not Applicable"}, 
717                  MappingStrings {"MIF.DMTF|System Cache|006.2"} ]
718              uint16 Level;
719           
720                 [Deprecated {"CIM_AssociatedCacheMemory.WritePolicy"}, 
721                  Description (
722                     "Defines whether this is write-back (value=3) or "
723                     "write-through (value=4) Cache, or whether this information "
724                     "\"Varies with Address\" (5) or is defined individually for "
725                     "each I/O (6).  Also, \"Other\" (1) and \"Unknown\" (2) can "
726                     "be specified."), 
727                  ValueMap {"1", "2", "3", "4", "5", "6"}, 
728                  Values {"Other", "Unknown", "Write Back", "Write Through",
729                     "Varies with Address", "Determination Per I/O"}, 
730                  MappingStrings {"MIF.DMTF|System Cache|006.5"} ]
731              uint16 WritePolicy;
732           
733                 [Deprecated {"CIM_AssociatedCacheMemory.CacheType"}, 
734                  Description (
735                     "Defines whether this is for instruction caching (value=3), "
736 tony  1.1           "data caching (value=4) or both (value=5, \"Unified\").  "
737                     "Also, \"Other\" (1) and \"Unknown\" (2) can be defined."), 
738                  ValueMap {"1", "2", "3", "4", "5"}, 
739                  Values {"Other", "Unknown", "Instruction", "Data", "Unified"}, 
740                  MappingStrings {"MIF.DMTF|System Cache|006.9"} ]
741              uint16 CacheType;
742           
743                 [Deprecated {"CIM_AssociatedCacheMemory.LineSize"}, Description (
744                     "Size, in bytes, of a single cache bucket or line."), 
745                  Units ("Bytes"), 
746                  MappingStrings {"MIF.DMTF|System Cache|006.10"} ]
747              uint32 LineSize;
748           
749                 [Deprecated {"CIM_AssociatedCacheMemory.ReplacementPolicy"}, 
750                  Description (
751                     "An integer enumeration describing the algorithm to "
752                     "determine which cache lines or buckets should be re-used."), 
753                  ValueMap {"1", "2", "3", "4", "5", "6", "7", "8"}, 
754                  Values {"Other", "Unknown", "Least Recently Used (LRU)",
755                      "First In First Out (FIFO)", "Last In First Out (LIFO)",
756                     "Least Frequently Used (LFU)", "Most Frequently Used (MFU)",
757 tony  1.1           "Data Dependent Multiple Algorithms"}, 
758                  MappingStrings {"MIF.DMTF|System Cache|006.12"} ]
759              uint16 ReplacementPolicy;
760           
761                 [Deprecated {"CIM_AssociatedCacheMemory.ReadPolicy"}, 
762                  Description (
763                     "Policy that shall be employed by the Cache for handling "
764                     "read requests.  For example, \"Read\", \"Read-Ahead\" or "
765                     "both can be specified using the values, 3, 4 or 5, "
766                     "respectively.  If the read policy is determined "
767                     "individually (ie, for each request), then the value 6 "
768                     "(\"Determination per I/O\") should be specified.  \"Other\" "
769                     "(1) and \"Unknown\" (2) are also valid values."), 
770                  ValueMap {"1", "2", "3", "4", "5", "6"}, 
771                  Values {"Other", "Unknown", "Read", "Read-Ahead",
772                      "Read and Read-Ahead", "Determination Per I/O"}, 
773                  MappingStrings {"MIF.DMTF|System Cache|006.13"} ]
774              uint16 ReadPolicy;
775           
776                 [Deprecated {"CIM_AssociatedCacheMemory.FlushTimer"}, 
777                  Description (
778 tony  1.1           "Maximum amount of time, in seconds, dirty lines or buckets "
779                     "may remain in the Cache before they are flushed.  A value "
780                     "of zero indicated that a cache flush is not controlled by a "
781                     "flushing timer."), 
782                  Units ("Seconds"), 
783                  MappingStrings {"MIF.DMTF|System Cache|006.14"} ]
784              uint32 FlushTimer;
785           
786                 [Deprecated {"CIM_AssociatedCacheMemory.Associativity"}, 
787                  Description (
788                     "An integer enumeration defining the system cache "
789                     "associativity.  For example, 6 indicates a fully "
790                     "associative cache."), 
791                  ValueMap {"1", "2", "3", "4", "5", "6", "7", "8"}, 
792                  Values {"Other", "Unknown", "Direct Mapped",
793                      "2-way Set-Associative", "4-way Set-Associative",
794                      "Fully Associative", "8-way Set-Associative",
795                      "16-way Set-Associative"}, 
796                  MappingStrings {"MIF.DMTF|System Cache|006.15"} ]
797              uint16 Associativity;
798           };
799 tony  1.1 
800           // ===================================================================
801           // end of file
802           // ===================================================================

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2