// =================================================================== // Title: System_OperatingSystem // $State: Exp $ // $Date: 2005/02/17 00:09:56 $ // $RCSfile: System_OperatingSystem.mof,v $ // $Revision: 1.1 $ // =================================================================== //#pragma inLine ("Includes/copyright.inc") // Copyright 1998-2005 Distributed Management Task Force, Inc. (DMTF). // All rights reserved. // DMTF is a not-for-profit association of industry members dedicated // to promoting enterprise and systems management and interoperability. // DMTF specifications and documents may be reproduced for uses // consistent with this purpose by members and non-members, // provided that correct attribution is given. // As DMTF specifications may be revised from time to time, // the particular version and release date should always be noted. // // Implementation of certain elements of this standard or proposed // standard may be subject to third party patent rights, including // provisional patent rights (herein "patent rights"). DMTF makes // no representations to users of the standard as to the existence // of such rights, and is not responsible to recognize, disclose, or // identify any or all such third party patent right, owners or // claimants, nor for any incomplete or inaccurate identification or // disclosure of such rights, owners or claimants. DMTF shall have no // liability to any party, in any manner or circumstance, under any // legal theory whatsoever, for failure to recognize, disclose, or // identify any such third party patent rights, or for such party's // reliance on the standard or incorporation thereof in its product, // protocols or testing procedures. DMTF shall have no liability to // any party implementing such standard, whether such implementation // is foreseeable or not, nor to any patent owner or claimant, and shall // have no liability or responsibility for costs or losses incurred if // a standard is withdrawn or modified after publication, and shall be // indemnified and held harmless by any party implementing the // standard from any and all claims of infringement by a patent owner // for such implementations. // // For information about patents held by third-parties which have // notified the DMTF that, in their opinion, such patent may relate to // or impact implementations of DMTF standards, visit // http://www.dmtf.org/about/policies/disclosures.php. //#pragma inLine // =================================================================== // Description: The System Model defines system related management // concepts. This file defines the specific concepts for // operating systems. // // The object classes below are listed in an order that // avoids forward references. Required objects, defined // by other working groups, are omitted. // ================================================================== // Change Log for v2.7 Final // CR935 - Rename OperationSystem.OSTypes value "VM/ESA" to "VM" and // add new "z/OS" value // // Change Log for v2.7 // CR757 - Change the subclassing of OperatingSystem from Logical // Element to EnabledLogicalElement // CR767 - Add the Compostion qualifer to InstalledOS // CR770 - Extend OperatingSystem.OSType to include "Windows XP" // - Add model correspondence to OperatingSystem.OSType // CR876 - Rename the "Digital Unix" operating system type to // "Tru64 UNIX". // =================================================================== #pragma locale ("en_US") // =================================================================== // OperatingSystem // =================================================================== [Version ( "2.7.0" ), Description ( "An OperatingSystem is software/firmware that makes a " "ComputerSystem's hardware usable, and implements and/or " "manages the resources, file systems, processes, user " "interfaces, services, ... available on the ComputerSystem.")] class CIM_OperatingSystem : CIM_EnabledLogicalElement { [Key, Propagated ( "CIM_ComputerSystem.CreationClassName" ), Description ( "The scoping ComputerSystem's CreationClassName."), MaxLen ( 256 )] string CSCreationClassName; [Key, Propagated ( "CIM_ComputerSystem.Name" ), Description ( "The scoping ComputerSystem's Name."), MaxLen ( 256 )] string CSName; [Key, Description ( "CreationClassName indicates the name of the class or the " "subclass used in the creation of an instance. When used " "with the other key properties of this class, this property " "allows all instances of this class and its subclasses to be " "uniquely identified."), MaxLen ( 256 )] string CreationClassName; [Key, Override ( "Name" ), Description ( "The inherited Name serves as key of an OperatingSystem " "instance within a ComputerSystem."), MaxLen ( 256 ), MappingStrings { "MIF.DMTF|Operating System|001.2" }] string Name; [Description ( "A integer indicating the type of OperatingSystem."), ValueMap { "0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12", "13", "14", "15", "16", "17", "18", "19", "20", "21", "22", "23", "24", "25", "26", "27", "28", "29", "30", "31", "32", "33", "34", "35", "36", "37", "38", "39", "40", "41", "42", "43", "44", "45", "46", "47", "48", "49", "50", "51", "52", "53", "54", "55", "56", "57", "58", "59", "60", "61", "62", "63", "64", "65", "66", "67", "68" }, Values { "Unknown", "Other", "MACOS", "ATTUNIX", "DGUX", "DECNT", "Tru64 UNIX", "OpenVMS", "HPUX", "AIX", //10 "MVS", "OS400", "OS/2", "JavaVM", "MSDOS", "WIN3x", "WIN95", "WIN98", "WINNT", "WINCE", //20 "NCR3000", "NetWare", "OSF", "DC/OS", "Reliant UNIX", "SCO UnixWare", "SCO OpenServer", "Sequent", "IRIX", "Solaris", //30 "SunOS", "U6000", "ASERIES", "TandemNSK", "TandemNT", "BS2000", "LINUX", "Lynx", "XENIX", "VM", //40 "Interactive UNIX", "BSDUNIX", "FreeBSD", "NetBSD", "GNU Hurd", "OS9", "MACH Kernel", "Inferno", "QNX", "EPOC", //50 "IxWorks", "VxWorks", "MiNT", "BeOS", "HP MPE", "NextStep", "PalmPilot", "Rhapsody", "Windows 2000", "Dedicated", //60 "OS/390", "VSE", "TPF","Windows (R) Me", "Caldera Open UNIX", "OpenBSD", "Not Applicable", "Windows XP", "z/OS" }, ModelCorrespondence { "CIM_OperatingSystem.OtherTypeDescription", "CIM_SoftwareElement.TargetOperatingSystem" }] uint16 OSType; [Description ( "A string describing the manufacturer and OperatingSystem " "type - used when the OperatingSystem property, OSType, is " "set to 1 or 59 (\"Other\" or \"Dedicated\"). The format of " "the string inserted in OtherTypeDescription should be " "similar in format to the Values strings defined for OSType. " "OtherTypeDescription should be set to NULL when OSType is " "any value other than 1 or 59."), MaxLen ( 64 ), ModelCorrespondence { "CIM_OperatingSystem.OSType" }] string OtherTypeDescription; [Description ( "A string describing the Operating System's version number. " "The format of the version information is as follows: .. or ..."), MappingStrings { "MIF.DMTF|Operating System|001.3" }] string Version; [Description ( "Time when the OperatingSystem was last booted."), MappingStrings { "MIF.DMTF|General Information|001.5" }] datetime LastBootUpTime; [Description ( "OperatingSystem's notion of the local date and time of day."), MappingStrings { "MIB.IETF|HOST-RESOURCES-MIB.hrSystemDate", "MIF.DMTF|General Information|001.6" }] datetime LocalDateTime; [Description ( "CurrentTimeZone indicates the number of minutes the " "OperatingSystem is offset from Greenwich Mean Time. Either " "the number is positive, negative or zero."), Units ( "Minutes" )] sint16 CurrentTimeZone; [Description ( "Number of user licenses for the OperatingSystem. If " "unlimited, enter 0.")] uint32 NumberOfLicensedUsers; [Description ( "Number of user sessions for which the OperatingSystem is " "currently storing state information."), Gauge, MappingStrings { "MIF.DMTF|Host System|001.4", "MIB.IETF|HOST-RESOURCES-MIB.hrSystemNumUsers" }] uint32 NumberOfUsers; [Description ( "Number of process contexts currently loaded or running on " "the OperatingSystem."), Gauge, MappingStrings { "MIF.DMTF|Host System|001.5", "MIB.IETF|HOST-RESOURCES-MIB.hrSystemProcesses" }] uint32 NumberOfProcesses; [Description ( "Maximum number of process contexts the OperatingSystem can " "support. If there is no fixed maximum, the value should be " "0. On systems that have a fixed maximum, this object can " "help diagnose failures that occur when the maximum is " "reached."), MappingStrings { "MIF.DMTF|Host System|001.6", "MIB.IETF|HOST-RESOURCES-MIB.hrSystemMaxProcesses" }] uint32 MaxNumberOfProcesses; [Description ( "Total swap space in Kbytes. This value may be NULL " "(unspecified) if swap space is not distinguished from page " "files. However, some Operating Systems distinguish these " "concepts. For example, in UNIX, whole processes can be " "'swapped out' when the free page list falls and remains " "below a specified amount."), Units ( "KiloBytes" )] uint64 TotalSwapSpaceSize; [Description ( "Number of Kbytes of virtual memory. For example, this may " "be calculated by adding the amount of total RAM to the " "amount of paging space (ie, adding the amount of memory " "in/aggregated by the ComputerSystem to the property, " "SizeStoredInPagingFiles."), Units ( "KiloBytes" ), MappingStrings { "MIF.DMTF|System Memory Settings|001.5" }] uint64 TotalVirtualMemorySize; [Description ( "Number of Kbytes of virtual memory currently unused and " "available. For example, this may be calculated by adding " "the amount of free RAM to the amount of free paging space " "(ie, adding the properties, FreePhysicalMemory and " "FreeSpace InPagingFiles)."), Units ( "KiloBytes" ), Gauge, MappingStrings { "MIF.DMTF|System Memory Settings|001.6" }] uint64 FreeVirtualMemory; [Description ( "Number of Kbytes of physical memory currently unused and " "available."), Units ( "KiloBytes" ), Gauge, MappingStrings { "MIF.DMTF|System Memory Settings|001.2", "MIF.UNIX|Host Physical Memory|6.1" }] uint64 FreePhysicalMemory; [Description ( "The total amount of physical memory (in Kbytes) available " "to the OperatingSystem. This value does not necessarily " "indicate the true amount of physical memory, but what is " "reported to the OperatingSystem as available to it."), Units ( "KiloBytes" )] uint64 TotalVisibleMemorySize; [Description ( "The total number of KBytes that can be stored in the " "OperatingSystem's paging files. 0 indicates that there are " "no paging files."), Units ( "KiloBytes" ), MappingStrings { "MIF.DMTF|System Memory Settings|001.3" }] uint64 SizeStoredInPagingFiles; [Description ( "The total number of KBytes that can be mapped into the " "OperatingSystem's paging files without causing any other " "pages to be swapped out. 0 indicates that there are no " "paging files."), Units ( "KiloBytes" ), Gauge, MappingStrings { "MIF.DMTF|System Memory Settings|001.4" }] uint64 FreeSpaceInPagingFiles; [Description ( "Maximum number of Kbytes of memory that can be allocated to " "a Process. For Operating Systems with no virtual memory, " "this value is typically equal to the total amount of " "physical Memory minus memory used by the BIOS and OS. For " "some Operating Systems, this value may be infinity - in " "which case, 0 should be entered. In other cases, this value " "could be a constant - for example, 2G or 4G."), Units ( "KiloBytes" )] uint64 MaxProcessMemorySize; [Description ( "Boolean indicating whether the OperatingSystem is " "distributed across several ComputerSystem nodes. If so, " "these nodes should be grouped as a Cluster.")] boolean Distributed; [Description ( "A value that indicates the maximum processes that a user " "can have associate with it.")] uint32 MaxProcessesPerUser; [Description ( "Requests a reboot of the OperatingSystem. The return value " "should be 0 if the request was successfully executed, 1 if " "the request is not supported and some other value if an " "error occurred. In a subclass, the set of possible return " "codes could be specified, using a ValueMap qualifier on the " "method. The strings to which the ValueMap contents are " "'translated' may also be specified in the subclass as a " "Values array qualifier.")] uint32 Reboot(); [Description ( "Requests a shutdown of the OperatingSystem. The return " "value should be 0 if the request was successfully executed, " "1 if the request is not supported and some other value if " "an error occurred. It is up to the implementation or " "subclass of OperatingSystem to establish dependencies " "between the Shutdown and Reboot methods, and for example, " "to provide more sophisticated capabilities such as " "scheduled shutdown/ reboot, etc. In a subclass, the set of " "possible return codes could be specified, using a ValueMap " "qualifier on the method. The strings to which the ValueMap " "contents are 'translated' may also be specified in the " "subclass as a Values array qualifier.")] uint32 Shutdown(); }; // =================================================================== // InstalledOS // =================================================================== [Association, Aggregation, Composition, Version ( "2.7.0" ), Description ( "A link between the ComputerSystem and the OperatingSystem(s) " "installed or loaded on it. An OperatingSystem is 'installed' " "on a ComputerSystem, when placed on one of its StorageExtents " "- for example, copied to a disk drive or downloaded to Memory. " "Using this definition, an OperatingSystem is 'installed' on a " "NetPC when downloaded via the network.")] class CIM_InstalledOS : CIM_SystemComponent { [Aggregate, Override ( "GroupComponent" ), Min ( 1 ), Max ( 1 ), Description ( "The ComputerSystem.")] CIM_ComputerSystem REF GroupComponent; [Override ( "PartComponent" ), Weak, Description ( "The OperatingSystem installed on the ComputerSystem.")] CIM_OperatingSystem REF PartComponent; [Description ( "Boolean indicating that the OperatingSystem is the default " "OS for the ComputerSystem."), MappingStrings { "MIF.DMTF|Operating System|001.4" }] boolean PrimaryOS; }; // =================================================================== // RunningOS // =================================================================== [Association, Version ( "2.6.0" ), Description ( "RunningOS indicates the currently executing OperatingSystem. " "At most one OperatingSystem can execute at any time on a " "ComputerSystem. 'At most one' is specified, since the Computer " "System may not be currently booted, or its OperatingSystem may " "be unknown.")] class CIM_RunningOS : CIM_Dependency { [Override ( "Antecedent" ), Max ( 1 ), Description ( "The OperatingSystem currently running on the " "ComputerSystem.")] CIM_OperatingSystem REF Antecedent; [Override ( "Dependent" ), Max ( 1 ), Description ( "The ComputerSystem.")] CIM_ComputerSystem REF Dependent; }; // =================================================================== // BootOSFromFS // =================================================================== [Association, Version ( "2.6.0" ), Description ( "A link between the OperatingSystem and the FileSystem(s) from " "which this OperatingSystem is loaded. The association is many- " "to-many since a Distributed OS could depend on several File " "Systems in order to correctly and completely load.")] class CIM_BootOSFromFS : CIM_Dependency { [Override ( "Antecedent" ), Description ( "The FileSystem from which the OperatingSystem is loaded.")] CIM_FileSystem REF Antecedent; [Override ( "Dependent" ), Description ( "The OperatingSystem.")] CIM_OperatingSystem REF Dependent; }; // =================================================================== // end of file // ===================================================================