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