1 tony 1.1 // ===================================================================
2 // Title: Device Processor 2.8
3 // Filename: Device28_Processor.mof
4 // Version: 2.8
5 // Status: Final
6 // Date: Jan 26, 2004
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 // objects to manage watch dog timers and processors.
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 Final
53 // CR1152 - Add new transmeta processor
54 //
55 // Change Log for v2.8 Preliminary
56 // CR951 - Add Intel(R) Pentium(R) 4 M
57 // to Processor.Family
58 // CR1095 - Correct processor.family
59 //
60 // Change Log for v2.7 Final
61 // CR928 - Correction of AMD processor values for values 182 & 183.
62 // - Add Socket 754 and Socket 940 to the values to Processor.
63 // UpgradeMethod.
64 tony 1.1 // CR995 - Update processor Family
65 // to include mainframes.
66 //
67 // Change Log for v2.7
68 // CR616 - Extend Processor.UpgradeMethod to include Socket 478
69 // CR622 - Fix the DMI mapping string to include the attribute number
70 // Processor.Family, .UpgradeMethod, .MaxClockSpeed, &
71 // .CurrentClockSpeed
72 // CR771 - Add the Composition qualifer to ComputerSystemProcessor
73 // CR772 - Extend Processor.Family to include AMD AthlonXP(TM) and
74 // AMD AthlonMP(TM)
75 // CR839 - Add Itanium 2 to Processor.Family
76 // CR893 - Add Intel(R) Pentium(R) 4 processor with HT Technology
77 // to Processory.Family
78 // CR897 - Deprecate the association, ComputerSystemProcessor
79 // ==================================================================
80
81 #pragma locale ("en_US")
82
83
84 // ===================================================================
85 tony 1.1 // WatchDog
86 // ===================================================================
87 [Version ( "2.7.0" ), Description (
88 "CIM_Watchdog is a timer implemented in system hardware. It "
89 "allows the hardware to monitor the state of the Operating "
90 "System, BIOS or a software component installed on the System. "
91 "If the monitored component fails to re-arm the timer before "
92 "its expiration, the hardware assumes that the System is in a "
93 "critical state, and could reset the ComputerSystem. This "
94 "feature can also be used as an application watchdog timer for "
95 "a mission-critical application. In this case, the application "
96 "would assume responsibility for re-arming the timer before "
97 "expiration.")]
98 class CIM_Watchdog : CIM_LogicalDevice {
99
100 [Description (
101 "The entity that is currently being monitored by the "
102 "WatchDog. This property is used to identify the module that "
103 "is responsible for or whose information is used to re-arm "
104 "the watchdog at periodic intervals."),
105 ValueMap { "0", "1", "2", "3", "4", "5", "6", "7", "8" },
106 tony 1.1 Values { "Unknown", "Other", "Operating System",
107 "Operating System Boot Process",
108 "Operating System Shutdown Process", "Firmware Boot Process",
109 "BIOS Boot Process", "Application", "Service Processor" }]
110 uint16 MonitoredEntity;
111
112 [Description (
113 "A string describing more textual information about the "
114 "monitored entity."),
115 MaxLen ( 256 )]
116 string MonitoredEntityDescription;
117
118 [Description (
119 "The timeout interval used by the watchdog, in MicroSeconds."),
120 Units ( "MicroSeconds" )]
121 uint32 TimeoutInterval;
122
123 [Description (
124 "Resolution of the timer. For example, if this value is 100, "
125 "then the timer can expire anytime between (TimeoutInterval- "
126 "100) microseconds or (TimeoutInterval+100) microseconds."),
127 tony 1.1 Units ( "MicroSeconds" )]
128 uint32 TimerResolution;
129
130 [Description (
131 "The time of the last timer expiry.")]
132 datetime TimeOfLastExpiration;
133
134 [Description (
135 "Monitored entity at the time of last timer expiry."),
136 ValueMap { "0", "1", "2", "3", "4", "5", "6", "7", "8" },
137 Values { "Unknown", "Other", "Operating System",
138 "Operating System Boot Process",
139 "Operating System Shutdown Process", "Firmware Boot Process",
140 "BIOS Boot Process", "Application", "Service Processor" }]
141 uint16 MonitoredEntityOnLastExpiration;
142
143 [Description (
144 "The action that should happen upon the expiry of the "
145 "watchdog."),
146 ValueMap { "0", "1", "2", "3", "4", "5" },
147 Values { "None - Status Only", "System Reset",
148 tony 1.1 "System Power Off", "System Power Off, then On",
149 "Generate System NonMaskableInterrupt (NMI)",
150 "Generate System Management Interrupt (SMI)" }]
151 uint16 ActionOnExpiration;
152
153 [Description (
154 "A method to re-arm the timer. This method is only used if "
155 "the MonitoredEntity is \"Application\". It returns 0 if "
156 "successful, 1 if unsupported, and any other value if an "
157 "error occurred. In a subclass, the set of possible return "
158 "codes could be specified, using a ValueMap qualifier on the "
159 "method. The strings to which the ValueMap contents are "
160 "'translated' may also be specified in the subclass as a "
161 "Values array qualifier.")]
162 uint32 KeepAlive();
163 };
164
165
166 // ===================================================================
167 // Processor
168 // ===================================================================
169 tony 1.1 [Version ( "2.7.0" ), Description (
170 "Capabilities and management of the Processor LogicalDevice.")]
171 class CIM_Processor : CIM_LogicalDevice {
172
173 [Description (
174 "A free form string describing the role of the Processor - "
175 "for example, \"Central Processor\" or \"Math Processor\".")]
176 string Role;
177
178 [Description (
179 "The Processor family type. For example, values include "
180 "\"Pentium(R) processor with MMX(TM) technology\" (14) and "
181 "\"68040\" (96)."),
182 ValueMap { "1", "2", "3", "4", "5", "6", "7", "8", "9", "10",
183 // 11
184 "11", "12", "13", "14", "15", "16", "17", "18", "19",
185 // 24
186 "24", "25", "26", "27", "28", "29", "30", "31", "32", "33",
187 "34", "35", "36", "37", "38", "39",
188 // 48
189 "48", "49", "50", "51", "52", "53", "54", "55",
190 tony 1.1 // 64
191 "64", "65", "66", "67", "68", "69",
192 // 80
193 "80", "81", "82", "83", "84", "85", "86", "87", "88",
194 // 96
195 "96", "97", "98", "99", "100", "101",
196 // 112
197 "112", "120", "121", "122", "128", "130", "131", "132",
198 // 144
199 "144", "145", "146", "147", "148", "149", "150",
200 // 160
201 "160", "176", "177", "178", "179", "180", "181", "182",
202 "183", "184", "185",
203 // 190
204 "190",
205 // 200
206 "200", "201", "202", "203", "204",
207 // 250
208 "250", "251", "260", "261", "280", "281",
209 // 300
210 "300", "301", "302", "320", "350", "500" },
211 tony 1.1 Values { "Other", "Unknown", "8086", "80286", "80386", "80486",
212 "8087", "80287", "80387", "80487",
213 // 11
214 "Pentium(R) brand", "Pentium(R) Pro", "Pentium(R) II",
215 "Pentium(R) processor with MMX(TM) technology",
216 "Celeron(TM)", "Pentium(R) II Xeon(TM)", "Pentium(R) III",
217 "M1 Family", "M2 Family",
218 // 24
219 "K5 Family", "K6 Family", "K6-2", "K6-3",
220 "AMD Athlon(TM) Processor Family",
221 "AMD(R) Duron(TM) Processor", "AMD29000 Family",
222 // 31
223 "K6-2+", "Power PC Family", "Power PC 601", "Power PC 603",
224 "Power PC 603+", "Power PC 604", "Power PC 620",
225 "Power PC X704", "Power PC 750",
226 // 48
227 "Alpha Family", "Alpha 21064", "Alpha 21066", "Alpha 21164",
228 "Alpha 21164PC", "Alpha 21164a", "Alpha 21264",
229 "Alpha 21364",
230 // 64
231 "MIPS Family", "MIPS R4000", "MIPS R4200", "MIPS R4400",
232 tony 1.1 "MIPS R4600", "MIPS R10000",
233 // 80
234 "SPARC Family", "SuperSPARC","microSPARC II",
235 "microSPARC IIep", "UltraSPARC", "UltraSPARC II",
236 "UltraSPARC IIi", "UltraSPARC III", "UltraSPARC IIIi",
237 // 96
238 "68040", "68xxx Family", "68000", "68010", "68020", "68030",
239 // 112
240 "Hobbit Family", "Crusoe(TM) TM5000 Family",
241 "Crusoe(TM) TM3000 Family", "Efficeon(TM) TM8000 Family",
242 "Weitek", "Itanium(TM) Processor",
243 "AMD Athlon(TM) 64 Processor Family",
244 "AMD Opteron(TM) Processor Family",
245 // 144
246 "PA-RISC Family", "PA-RISC 8500", "PA-RISC 8000",
247 "PA-RISC 7300LC", "PA-RISC 7200", "PA-RISC 7100LC",
248 "PA-RISC 7100",
249 // 160
250 "V30 Family", "Pentium(R) III Xeon(TM)",
251 "Pentium(R) III Processor with Intel(R) SpeedStep(TM) "
252 "Technology", "Pentium(R) 4", "Intel(R) Xeon(TM)",
253 tony 1.1 // 180
254 "AS400 Family", "Intel(R) Xeon(TM) processor MP",
255 "AMD Athlon(TM) XP Family", "AMD Athlon(TM) MP Family",
256 "Intel(R) Itanium(R) 2", "Intel(R) Pentium(R) M processor",
257 // 190
258 "K7",
259 // 200
260 "S/390 and zSeries Family", "ESA/390 G4", "ESA/390 G5",
261 "ESA/390 G6", "z/Architectur base",
262 // 250
263 "i860", "i960", "SH-3", "SH-4", "ARM", "StrongARM",
264 // 300
265 "6x86", "MediaGX", "MII", "WinChip", "DSP",
266 "Video Processor" },
267 MappingStrings { "MIF.DMTF|Processor|017.3" },
268 ModelCorrespondence { "CIM_Processor.OtherFamilyDescription" }]
269 uint16 Family;
270
271 [Description (
272 "A string describing the Processor Family type - used when "
273 "the Family property is set to 1 (\"Other\"). This string "
274 tony 1.1 "should be set to NULL when the Family property is any value "
275 "other than 1."),
276 MaxLen ( 64 ),
277 ModelCorrespondence { "CIM_Processor.Family" }]
278 string OtherFamilyDescription;
279
280 [Description (
281 "CPU socket information including data on how this Processor "
282 "can be upgraded (if upgrades are supported). This property "
283 "is an integer enumeration."),
284 ValueMap { "1", "2", "3", "4", "5", "6", "7", "8", "9", "10",
285 "11", "12", "13", "14", "15", "16", "17" },
286 Values { "Other", "Unknown", "Daughter Board", "ZIF Socket",
287 "Replacement/Piggy Back", "None", "LIF Socket", "Slot 1",
288 "Slot 2", "370 Pin Socket", "Slot A", "Slot M", "Socket 423",
289 "Socket A (Socket 462)", "Socket 478", "Socket 754",
290 "Socket 940" },
291 MappingStrings { "MIF.DMTF|Processor|017.7" }]
292 uint16 UpgradeMethod;
293
294 [Description (
295 tony 1.1 "The maximum speed (in MHz) of this Processor."),
296 Units ( "MegaHertz" ),
297 MappingStrings { "MIF.DMTF|Processor|017.5" }]
298 uint32 MaxClockSpeed;
299
300 [Description (
301 "The current speed (in MHz) of this Processor."),
302 Units ( "MegaHertz" ),
303 MappingStrings { "MIF.DMTF|Processor|017.6" }]
304 uint32 CurrentClockSpeed;
305
306 [Description (
307 "Processor data width in bits."),
308 Units ( "Bits" )]
309 uint16 DataWidth;
310
311 [Description (
312 "Processor address width in bits."),
313 Units ( "Bits" )]
314 uint16 AddressWidth;
315
316 tony 1.1 [Description (
317 "Loading of this Processor, averaged over the last minute, "
318 "in Percent."),
319 Units ( "Percent" ), Gauge,
320 MappingStrings { "MIB.IETF|HOST-RESOURCES-MIB.hrProcessorLoad" }]
321 uint16 LoadPercentage;
322
323 [Description (
324 "Stepping is a free-form string indicating the revision "
325 "level of the Processor within the Processor.Family."),
326 ModelCorrespondence { "CIM_Processor.Family" }]
327 string Stepping;
328
329 [Description (
330 "A globally unique identifier for the Processor. This "
331 "identifier may only be unique within a Processor Family.")]
332 string UniqueID;
333
334 [Description (
335 "The CPUStatus property indicates the current status of the "
336 "Processor. For example, it may be disabled by the user via "
337 tony 1.1 "BIOS (value=2), or disabled due to a POST error (value= 3). "
338 "Information in this property can be obtained from SMBIOS, "
339 "the Type 4 structure, the Status attribute."),
340 ValueMap { "0", "1", "2", "3", "4", "7" },
341 Values { "Unknown", "CPU Enabled",
342 "CPU Disabled by User via BIOS Setup",
343 "CPU Disabled By BIOS (POST Error)", "CPU Is Idle", "Other" }]
344 uint16 CPUStatus;
345 };
346
347
348 // ===================================================================
349 // ComputerSystemProcessor
350 // ===================================================================
351 [Association, Deprecated { "CIM_SystemDevice" }, Aggregation,
352 Composition, Version ( "2.7.0" ), Description (
353 "Association indicating the processor(s) of a UnitaryComputer "
354 "System. ComputerSystemProcessor is depreacted in lieu of its "
355 "superclass, SystemDevice, since it adds no detail and changes "
356 "none of the cardinalities in the superclass' definition.")]
357 class CIM_ComputerSystemProcessor : CIM_SystemDevice {
358 tony 1.1
359 [Deprecated { "CIM_SystemDevice.GroupComponent" }, Aggregate,
360 Override ( "GroupComponent" ), Description (
361 "The UnitaryComputerSystem.")]
362 CIM_UnitaryComputerSystem REF GroupComponent;
363
364 [Deprecated { "CIM_SystemDevice.PartComponent" },
365 Override ( "PartComponent" ), Description (
366 "The Processor which is part of the UnitaryComputerSystem.")]
367 CIM_Processor REF PartComponent;
368 };
369
370
371 // ===================================================================
372 // end of file
373 // ===================================================================
|