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