1 tony 1.1 // ===================================================================
2 // Title: System Operating System 2.8
3 // Filename: System28_OperatingSystem.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 System Model defines system related management
45 // concepts. This file defines the specific concepts for
46 // operating systems.
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 // CR935 - Rename OperationSystem.OSTypes value "VM/ESA" to "VM" and
54 // add new "z/OS" value
55 //
56 // Change Log for v2.7
57 // CR757 - Change the subclassing of OperatingSystem from Logical
58 // Element to EnabledLogicalElement
59 // CR767 - Add the Compostion qualifer to InstalledOS
60 // CR770 - Extend OperatingSystem.OSType to include "Windows XP"
61 // - Add model correspondence to OperatingSystem.OSType
62 // CR876 - Rename the "Digital Unix" operating system type to
63 // "Tru64 UNIX".
64 tony 1.1 // ===================================================================
65
66 #pragma locale ("en_US")
67
68
69 // ===================================================================
70 // OperatingSystem
71 // ===================================================================
72 [Version ("2.7.0"), Description (
73 "An OperatingSystem is software/firmware that makes a "
74 "ComputerSystem's hardware usable, and implements and/or "
75 "manages the resources, file systems, processes, user "
76 "interfaces, services, ... available on the ComputerSystem.") ]
77 class CIM_OperatingSystem : CIM_EnabledLogicalElement {
78
79 [Key, Propagated ("CIM_ComputerSystem.CreationClassName"),
80 Description (
81 "The scoping ComputerSystem's CreationClassName."),
82 MaxLen (256) ]
83 string CSCreationClassName;
84
85 tony 1.1 [Key, Propagated ("CIM_ComputerSystem.Name"), Description (
86 "The scoping ComputerSystem's Name."),
87 MaxLen (256) ]
88 string CSName;
89
90 [Key, Description (
91 "CreationClassName indicates the name of the class or the "
92 "subclass used in the creation of an instance. When used "
93 "with the other key properties of this class, this property "
94 "allows all instances of this class and its subclasses to be "
95 "uniquely identified."),
96 MaxLen (256) ]
97 string CreationClassName;
98
99 [Key, Override ("Name"), Description (
100 "The inherited Name serves as key of an OperatingSystem "
101 "instance within a ComputerSystem."),
102 MaxLen (256),
103 MappingStrings {"MIF.DMTF|Operating System|001.2"} ]
104 string Name;
105
106 tony 1.1 [Description (
107 "A integer indicating the type of OperatingSystem."),
108 ValueMap {"0", "1", "2", "3", "4", "5", "6", "7", "8", "9",
109 "10", "11", "12", "13", "14", "15", "16", "17", "18", "19",
110 "20", "21", "22", "23", "24", "25", "26", "27", "28", "29",
111 "30", "31", "32", "33", "34", "35", "36", "37", "38", "39",
112 "40", "41", "42", "43", "44", "45", "46", "47", "48", "49",
113 "50", "51", "52", "53", "54", "55", "56", "57", "58", "59",
114 "60", "61", "62", "63", "64", "65", "66", "67", "68"},
115 Values {"Unknown", "Other", "MACOS", "ATTUNIX", "DGUX", "DECNT",
116 "Tru64 UNIX", "OpenVMS", "HPUX", "AIX",
117 //10
118 "MVS", "OS400", "OS/2", "JavaVM", "MSDOS", "WIN3x", "WIN95",
119 "WIN98", "WINNT", "WINCE",
120 //20
121 "NCR3000", "NetWare", "OSF", "DC/OS", "Reliant UNIX",
122 "SCO UnixWare", "SCO OpenServer", "Sequent", "IRIX",
123 "Solaris",
124 //30
125 "SunOS", "U6000", "ASERIES", "TandemNSK", "TandemNT", "BS2000",
126 "LINUX", "Lynx", "XENIX", "VM",
127 tony 1.1 //40
128 "Interactive UNIX", "BSDUNIX", "FreeBSD", "NetBSD", "GNU Hurd",
129 "OS9", "MACH Kernel", "Inferno", "QNX", "EPOC",
130 //50
131 "IxWorks", "VxWorks", "MiNT", "BeOS", "HP MPE", "NextStep",
132 "PalmPilot", "Rhapsody", "Windows 2000", "Dedicated",
133 //60
134 "OS/390", "VSE", "TPF","Windows (R) Me", "Caldera Open UNIX",
135 "OpenBSD", "Not Applicable", "Windows XP", "z/OS"},
136 ModelCorrespondence {
137 "CIM_OperatingSystem.OtherTypeDescription",
138 "CIM_SoftwareElement.TargetOperatingSystem"} ]
139 uint16 OSType;
140
141 [Description (
142 "A string describing the manufacturer and OperatingSystem "
143 "type - used when the OperatingSystem property, OSType, is "
144 "set to 1 or 59 (\"Other\" or \"Dedicated\"). The format of "
145 "the string inserted in OtherTypeDescription should be "
146 "similar in format to the Values strings defined for "
147 "OSType. OtherTypeDescription should be set to NULL when "
148 tony 1.1 "OSType is any value other than 1 or 59."),
149 MaxLen (64),
150 ModelCorrespondence {"CIM_OperatingSystem.OSType"} ]
151 string OtherTypeDescription;
152
153 [Description (
154 "A string describing the Operating System's version number. "
155 "The format of the version information is as follows: <Major "
156 "Number>.<Minor Number>.<Revision> or <Major Number>.<Minor "
157 "Number>.<Revision Letter>."),
158 MappingStrings {"MIF.DMTF|Operating System|001.3"} ]
159 string Version;
160
161 [Description (
162 "Time when the OperatingSystem was last booted."),
163 MappingStrings {"MIF.DMTF|General Information|001.5"} ]
164 datetime LastBootUpTime;
165
166 [Description (
167 "OperatingSystem's notion of the local date and time of "
168 "day."),
169 tony 1.1 MappingStrings {"MIB.IETF|HOST-RESOURCES-MIB.hrSystemDate",
170 "MIF.DMTF|General Information|001.6"} ]
171 datetime LocalDateTime;
172
173 [Description (
174 "CurrentTimeZone indicates the number of minutes the "
175 "OperatingSystem is offset from Greenwich Mean Time. Either "
176 "the number is positive, negative or zero."),
177 Units ("Minutes") ]
178 sint16 CurrentTimeZone;
179
180 [Description (
181 "Number of user licenses for the OperatingSystem. If "
182 "unlimited, enter 0.") ]
183 uint32 NumberOfLicensedUsers;
184
185 [Description (
186 "Number of user sessions for which the OperatingSystem is "
187 "currently storing state information."),
188 Gauge,
189 MappingStrings {"MIF.DMTF|Host System|001.4",
190 tony 1.1 "MIB.IETF|HOST-RESOURCES-MIB.hrSystemNumUsers"} ]
191 uint32 NumberOfUsers;
192
193 [Description (
194 "Number of process contexts currently loaded or running on "
195 "the OperatingSystem."),
196 Gauge,
197 MappingStrings {"MIF.DMTF|Host System|001.5",
198 "MIB.IETF|HOST-RESOURCES-MIB.hrSystemProcesses"} ]
199 uint32 NumberOfProcesses;
200
201 [Description (
202 "Maximum number of process contexts the OperatingSystem can "
203 "support. If there is no fixed maximum, the value should be "
204 "0. On systems that have a fixed maximum, this object can "
205 "help diagnose failures that occur when the maximum is "
206 "reached."),
207 MappingStrings {"MIF.DMTF|Host System|001.6",
208 "MIB.IETF|HOST-RESOURCES-MIB.hrSystemMaxProcesses"} ]
209 uint32 MaxNumberOfProcesses;
210
211 tony 1.1 [Description (
212 "Total swap space in Kbytes. This value may be NULL "
213 "(unspecified) if swap space is not distinguished from page "
214 "files. However, some Operating Systems distinguish these "
215 "concepts. For example, in UNIX, whole processes can be "
216 "'swapped out' when the free page list falls and remains "
217 "below a specified amount."),
218 Units ("KiloBytes") ]
219 uint64 TotalSwapSpaceSize;
220
221 [Description (
222 "Number of Kbytes of virtual memory. For example, this may "
223 "be calculated by adding the amount of total RAM to the "
224 "amount of paging space (ie, adding the amount of memory "
225 "in/aggregated by the ComputerSystem to the property, "
226 "SizeStoredInPagingFiles."),
227 Units ("KiloBytes"),
228 MappingStrings {"MIF.DMTF|System Memory Settings|001.5"} ]
229 uint64 TotalVirtualMemorySize;
230
231 [Description (
232 tony 1.1 "Number of Kbytes of virtual memory currently unused and "
233 "available. For example, this may be calculated by adding "
234 "the amount of free RAM to the amount of free paging space "
235 "(ie, adding the properties, FreePhysicalMemory and "
236 "FreeSpace InPagingFiles)."),
237 Units ("KiloBytes"), Gauge,
238 MappingStrings {"MIF.DMTF|System Memory Settings|001.6"} ]
239 uint64 FreeVirtualMemory;
240
241 [Description (
242 "Number of Kbytes of physical memory currently unused and "
243 "available."),
244 Units ("KiloBytes"), Gauge,
245 MappingStrings {"MIF.DMTF|System Memory Settings|001.2",
246 "MIF.UNIX|Host Physical Memory|6.1"} ]
247 uint64 FreePhysicalMemory;
248
249 [Description (
250 "The total amount of physical memory (in Kbytes) available "
251 "to the OperatingSystem. This value does not necessarily "
252 "indicate the true amount of physical memory, but what is "
253 tony 1.1 "reported to the OperatingSystem as available to it."),
254 Units ("KiloBytes") ]
255 uint64 TotalVisibleMemorySize;
256
257 [Description (
258 "The total number of KBytes that can be stored in the "
259 "OperatingSystem's paging files. 0 indicates that there are "
260 "no paging files."),
261 Units ("KiloBytes"),
262 MappingStrings {"MIF.DMTF|System Memory Settings|001.3"} ]
263 uint64 SizeStoredInPagingFiles;
264
265 [Description (
266 "The total number of KBytes that can be mapped into the "
267 "OperatingSystem's paging files without causing any other "
268 "pages to be swapped out. 0 indicates that there are no "
269 "paging files."),
270 Units ("KiloBytes"), Gauge,
271 MappingStrings {"MIF.DMTF|System Memory Settings|001.4"} ]
272 uint64 FreeSpaceInPagingFiles;
273
274 tony 1.1 [Description (
275 "Maximum number of Kbytes of memory that can be allocated to "
276 "a Process. For Operating Systems with no virtual memory, "
277 "this value is typically equal to the total amount of "
278 "physical Memory minus memory used by the BIOS and OS. For "
279 "some Operating Systems, this value may be infinity - in "
280 "which case, 0 should be entered. In other cases, this "
281 "value could be a constant - for example, 2G or 4G."),
282 Units ("KiloBytes") ]
283 uint64 MaxProcessMemorySize;
284
285 [Description (
286 "Boolean indicating whether the OperatingSystem is "
287 "distributed across several ComputerSystem nodes. If so, "
288 "these nodes should be grouped as a Cluster.") ]
289 boolean Distributed;
290
291 [Description (
292 "A value that indicates the maximum processes that a user "
293 "can have associate with it.") ]
294 uint32 MaxProcessesPerUser;
295 tony 1.1
296 [Description (
297 "Requests a reboot of the OperatingSystem. The return value "
298 "should be 0 if the request was successfully executed, 1 if "
299 "the request is not supported and some other value if an "
300 "error occurred. In a subclass, the set of possible return "
301 "codes could be specified, using a ValueMap qualifier on the "
302 "method. The strings to which the ValueMap contents are "
303 "'translated' may also be specified in the subclass as a "
304 "Values array qualifier.") ]
305 uint32 Reboot();
306
307 [Description (
308 "Requests a shutdown of the OperatingSystem. The return "
309 "value should be 0 if the request was successfully executed, "
310 "1 if the request is not supported and some other value if "
311 "an error occurred. It is up to the implementation or "
312 "subclass of OperatingSystem to establish dependencies "
313 "between the Shutdown and Reboot methods, and for example, "
314 "to provide more sophisticated capabilities such as "
315 "scheduled shutdown/ reboot, etc. In a subclass, the set of "
316 tony 1.1 "possible return codes could be specified, using a ValueMap "
317 "qualifier on the method. The strings to which the ValueMap "
318 "contents are 'translated' may also be specified in the "
319 "subclass as a Values array qualifier.") ]
320 uint32 Shutdown();
321 };
322
323
324 // ===================================================================
325 // InstalledOS
326 // ===================================================================
327 [Association, Aggregation, Composition, Version ("2.7.0"),
328 Description (
329 "A link between the ComputerSystem and the OperatingSystem(s) "
330 "installed or loaded on it. An OperatingSystem is 'installed' "
331 "on a ComputerSystem, when placed on one of its StorageExtents "
332 "- for example, copied to a disk drive or downloaded to "
333 "Memory. Using this definition, an OperatingSystem is "
334 "'installed' on a NetPC when downloaded via the network.") ]
335 class CIM_InstalledOS : CIM_SystemComponent {
336
337 tony 1.1 [Aggregate, Override ("GroupComponent"), Min (1), Max (1),
338 Description (
339 "The ComputerSystem.") ]
340 CIM_ComputerSystem REF GroupComponent;
341
342 [Override ("PartComponent"), Weak, Description (
343 "The OperatingSystem installed on the ComputerSystem.") ]
344 CIM_OperatingSystem REF PartComponent;
345
346 [Description (
347 "Boolean indicating that the OperatingSystem is the default "
348 "OS for the ComputerSystem."),
349 MappingStrings {"MIF.DMTF|Operating System|001.4"} ]
350 boolean PrimaryOS;
351 };
352
353
354 // ===================================================================
355 // RunningOS
356 // ===================================================================
357 [Association, Version ("2.6.0"), Description (
358 tony 1.1 "RunningOS indicates the currently executing OperatingSystem. "
359 "At most one OperatingSystem can execute at any time on a "
360 "ComputerSystem. 'At most one' is specified, since the "
361 "Computer System may not be currently booted, or its "
362 "OperatingSystem may be unknown.") ]
363 class CIM_RunningOS : CIM_Dependency {
364
365 [Override ("Antecedent"), Max (1), Description (
366 "The OperatingSystem currently running on the "
367 "ComputerSystem.") ]
368 CIM_OperatingSystem REF Antecedent;
369
370 [Override ("Dependent"), Max (1), Description (
371 "The ComputerSystem.") ]
372 CIM_ComputerSystem REF Dependent;
373 };
374
375
376 // ===================================================================
377 // BootOSFromFS
378 // ===================================================================
379 tony 1.1 [Association, Version ("2.6.0"), Description (
380 "A link between the OperatingSystem and the FileSystem(s) from "
381 "which this OperatingSystem is loaded. The association is "
382 "many- to-many since a Distributed OS could depend on several "
383 "File Systems in order to correctly and completely load.") ]
384 class CIM_BootOSFromFS : CIM_Dependency {
385
386 [Override ("Antecedent"), Description (
387 "The FileSystem from which the OperatingSystem is loaded.") ]
388 CIM_FileSystem REF Antecedent;
389
390 [Override ("Dependent"), Description (
391 "The OperatingSystem.") ]
392 CIM_OperatingSystem REF Dependent;
393 };
394
395
396 // ===================================================================
397 // end of file
398 // ===================================================================
|