1 tony 1.1 // ===================================================================
2 // Title: System Operating System 2.8
3 // Filename: System28_OperatingSystem.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 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",
116 "DECNT", "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",
126 "BS2000", "LINUX", "Lynx", "XENIX", "VM",
127 tony 1.1 //40
128 "Interactive UNIX", "BSDUNIX", "FreeBSD", "NetBSD",
129 "GNU Hurd", "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 OSType. "
147 "OtherTypeDescription should be set to NULL when OSType is "
148 tony 1.1 "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 day."),
168 MappingStrings { "MIB.IETF|HOST-RESOURCES-MIB.hrSystemDate",
169 tony 1.1 "MIF.DMTF|General Information|001.6" }]
170 datetime LocalDateTime;
171
172 [Description (
173 "CurrentTimeZone indicates the number of minutes the "
174 "OperatingSystem is offset from Greenwich Mean Time. Either "
175 "the number is positive, negative or zero."),
176 Units ( "Minutes" )]
177 sint16 CurrentTimeZone;
178
179 [Description (
180 "Number of user licenses for the OperatingSystem. If "
181 "unlimited, enter 0.")]
182 uint32 NumberOfLicensedUsers;
183
184 [Description (
185 "Number of user sessions for which the OperatingSystem is "
186 "currently storing state information."),
187 Gauge,
188 MappingStrings { "MIF.DMTF|Host System|001.4",
189 "MIB.IETF|HOST-RESOURCES-MIB.hrSystemNumUsers" }]
190 tony 1.1 uint32 NumberOfUsers;
191
192 [Description (
193 "Number of process contexts currently loaded or running on "
194 "the OperatingSystem."),
195 Gauge,
196 MappingStrings { "MIF.DMTF|Host System|001.5",
197 "MIB.IETF|HOST-RESOURCES-MIB.hrSystemProcesses" }]
198 uint32 NumberOfProcesses;
199
200 [Description (
201 "Maximum number of process contexts the OperatingSystem can "
202 "support. If there is no fixed maximum, the value should be "
203 "0. On systems that have a fixed maximum, this object can "
204 "help diagnose failures that occur when the maximum is "
205 "reached."),
206 MappingStrings { "MIF.DMTF|Host System|001.6",
207 "MIB.IETF|HOST-RESOURCES-MIB.hrSystemMaxProcesses" }]
208 uint32 MaxNumberOfProcesses;
209
210 [Description (
211 tony 1.1 "Total swap space in Kbytes. This value may be NULL "
212 "(unspecified) if swap space is not distinguished from page "
213 "files. However, some Operating Systems distinguish these "
214 "concepts. For example, in UNIX, whole processes can be "
215 "'swapped out' when the free page list falls and remains "
216 "below a specified amount."),
217 Units ( "KiloBytes" )]
218 uint64 TotalSwapSpaceSize;
219
220 [Description (
221 "Number of Kbytes of virtual memory. For example, this may "
222 "be calculated by adding the amount of total RAM to the "
223 "amount of paging space (ie, adding the amount of memory "
224 "in/aggregated by the ComputerSystem to the property, "
225 "SizeStoredInPagingFiles."),
226 Units ( "KiloBytes" ),
227 MappingStrings { "MIF.DMTF|System Memory Settings|001.5" }]
228 uint64 TotalVirtualMemorySize;
229
230 [Description (
231 "Number of Kbytes of virtual memory currently unused and "
232 tony 1.1 "available. For example, this may be calculated by adding "
233 "the amount of free RAM to the amount of free paging space "
234 "(ie, adding the properties, FreePhysicalMemory and "
235 "FreeSpace InPagingFiles)."),
236 Units ( "KiloBytes" ), Gauge,
237 MappingStrings { "MIF.DMTF|System Memory Settings|001.6" }]
238 uint64 FreeVirtualMemory;
239
240 [Description (
241 "Number of Kbytes of physical memory currently unused and "
242 "available."),
243 Units ( "KiloBytes" ), Gauge,
244 MappingStrings { "MIF.DMTF|System Memory Settings|001.2",
245 "MIF.UNIX|Host Physical Memory|6.1" }]
246 uint64 FreePhysicalMemory;
247
248 [Description (
249 "The total amount of physical memory (in Kbytes) available "
250 "to the OperatingSystem. This value does not necessarily "
251 "indicate the true amount of physical memory, but what is "
252 "reported to the OperatingSystem as available to it."),
253 tony 1.1 Units ( "KiloBytes" )]
254 uint64 TotalVisibleMemorySize;
255
256 [Description (
257 "The total number of KBytes that can be stored in the "
258 "OperatingSystem's paging files. 0 indicates that there are "
259 "no paging files."),
260 Units ( "KiloBytes" ),
261 MappingStrings { "MIF.DMTF|System Memory Settings|001.3" }]
262 uint64 SizeStoredInPagingFiles;
263
264 [Description (
265 "The total number of KBytes that can be mapped into the "
266 "OperatingSystem's paging files without causing any other "
267 "pages to be swapped out. 0 indicates that there are no "
268 "paging files."),
269 Units ( "KiloBytes" ), Gauge,
270 MappingStrings { "MIF.DMTF|System Memory Settings|001.4" }]
271 uint64 FreeSpaceInPagingFiles;
272
273 [Description (
274 tony 1.1 "Maximum number of Kbytes of memory that can be allocated to "
275 "a Process. For Operating Systems with no virtual memory, "
276 "this value is typically equal to the total amount of "
277 "physical Memory minus memory used by the BIOS and OS. For "
278 "some Operating Systems, this value may be infinity - in "
279 "which case, 0 should be entered. In other cases, this value "
280 "could be a constant - for example, 2G or 4G."),
281 Units ( "KiloBytes" )]
282 uint64 MaxProcessMemorySize;
283
284 [Description (
285 "Boolean indicating whether the OperatingSystem is "
286 "distributed across several ComputerSystem nodes. If so, "
287 "these nodes should be grouped as a Cluster.")]
288 boolean Distributed;
289
290 [Description (
291 "A value that indicates the maximum processes that a user "
292 "can have associate with it.")]
293 uint32 MaxProcessesPerUser;
294
295 tony 1.1 [Description (
296 "Requests a reboot of the OperatingSystem. The return value "
297 "should be 0 if the request was successfully executed, 1 if "
298 "the request is not supported and some other value if an "
299 "error occurred. In a subclass, the set of possible return "
300 "codes could be specified, using a ValueMap qualifier on the "
301 "method. The strings to which the ValueMap contents are "
302 "'translated' may also be specified in the subclass as a "
303 "Values array qualifier.")]
304 uint32 Reboot();
305
306 [Description (
307 "Requests a shutdown of the OperatingSystem. The return "
308 "value should be 0 if the request was successfully executed, "
309 "1 if the request is not supported and some other value if "
310 "an error occurred. It is up to the implementation or "
311 "subclass of OperatingSystem to establish dependencies "
312 "between the Shutdown and Reboot methods, and for example, "
313 "to provide more sophisticated capabilities such as "
314 "scheduled shutdown/ reboot, etc. In a subclass, the set of "
315 "possible return codes could be specified, using a ValueMap "
316 tony 1.1 "qualifier on the method. The strings to which the ValueMap "
317 "contents are 'translated' may also be specified in the "
318 "subclass as a Values array qualifier.")]
319 uint32 Shutdown();
320 };
321
322
323 // ===================================================================
324 // InstalledOS
325 // ===================================================================
326 [Association, Aggregation, Composition, Version ( "2.7.0" ),
327 Description (
328 "A link between the ComputerSystem and the OperatingSystem(s) "
329 "installed or loaded on it. An OperatingSystem is 'installed' "
330 "on a ComputerSystem, when placed on one of its StorageExtents "
331 "- for example, copied to a disk drive or downloaded to Memory. "
332 "Using this definition, an OperatingSystem is 'installed' on a "
333 "NetPC when downloaded via the network.")]
334 class CIM_InstalledOS : CIM_SystemComponent {
335
336 [Aggregate, Override ( "GroupComponent" ), Min ( 1 ), Max ( 1 ),
337 tony 1.1 Description (
338 "The ComputerSystem.")]
339 CIM_ComputerSystem REF GroupComponent;
340
341 [Override ( "PartComponent" ), Weak, Description (
342 "The OperatingSystem installed on the ComputerSystem.")]
343 CIM_OperatingSystem REF PartComponent;
344
345 [Description (
346 "Boolean indicating that the OperatingSystem is the default "
347 "OS for the ComputerSystem."),
348 MappingStrings { "MIF.DMTF|Operating System|001.4" }]
349 boolean PrimaryOS;
350 };
351
352
353 // ===================================================================
354 // RunningOS
355 // ===================================================================
356 [Association, Version ( "2.6.0" ), Description (
357 "RunningOS indicates the currently executing OperatingSystem. "
358 tony 1.1 "At most one OperatingSystem can execute at any time on a "
359 "ComputerSystem. 'At most one' is specified, since the Computer "
360 "System may not be currently booted, or its OperatingSystem may "
361 "be unknown.")]
362 class CIM_RunningOS : CIM_Dependency {
363
364 [Override ( "Antecedent" ), Max ( 1 ), Description (
365 "The OperatingSystem currently running on the "
366 "ComputerSystem.")]
367 CIM_OperatingSystem REF Antecedent;
368
369 [Override ( "Dependent" ), Max ( 1 ), Description (
370 "The ComputerSystem.")]
371 CIM_ComputerSystem REF Dependent;
372 };
373
374
375 // ===================================================================
376 // BootOSFromFS
377 // ===================================================================
378 [Association, Version ( "2.6.0" ), Description (
379 tony 1.1 "A link between the OperatingSystem and the FileSystem(s) from "
380 "which this OperatingSystem is loaded. The association is many- "
381 "to-many since a Distributed OS could depend on several File "
382 "Systems in order to correctly and completely load.")]
383 class CIM_BootOSFromFS : CIM_Dependency {
384
385 [Override ( "Antecedent" ), Description (
386 "The FileSystem from which the OperatingSystem is loaded.")]
387 CIM_FileSystem REF Antecedent;
388
389 [Override ( "Dependent" ), Description (
390 "The OperatingSystem.")]
391 CIM_OperatingSystem REF Dependent;
392 };
393
394
395 // ===================================================================
396 // end of file
397 // ===================================================================
|