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