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