# Class CIM_OperatingSystem
extends CIM_EnabledLogicalElement

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.

### Table of Contents
Hierarchy
Direct Known Subclasses
Class Qualifiers
Class Properties
Class Methods

## Class Hierarchy

CIM_ManagedElement
|
+--CIM_ManagedSystemElement
|
+--CIM_LogicalElement
|
+--CIM_EnabledLogicalElement
|
+--CIM_OperatingSystem

## Direct Known Subclasses

## Class Qualifiers

Name | Data Type | Value
--- | --- | ---
Description | string | 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.
UMLPackagePath | string | CIM::System::OperatingSystem
Version | string | 2.23.0

## Class Properties

### Local Class Properties

Name | Data Type | Default Value | Qualifiers
--- | --- | --- | ---
Name | Data Type | Value
CreationClassName | string |
Description | string | 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.
Key | boolean | true
MaxLen | uint32 | 256
CSCreationClassName | string |
Description | string | The scoping ComputerSystem's CreationClassName.
Key | boolean | true
MaxLen | uint32 | 256
Propagated | string | CIM_ComputerSystem.CreationClassName
CSName | string |
Description | string | The scoping ComputerSystem's Name.
Key | boolean | true
MaxLen | uint32 | 256
Propagated | string | CIM_ComputerSystem.Name
CurrentTimeZone | sint16 |
Description | string | CurrentTimeZone indicates the number of minutes the OperatingSystem is offset from Greenwich Mean Time. Either the number is positive, negative or zero.
Units | string | Minutes
Distributed | boolean |
Description | string | Boolean indicating whether the OperatingSystem is distributed across several ComputerSystem nodes. If so, these nodes should be grouped as a Cluster.
FreePhysicalMemory | uint64 |
Description | string | Number of Kbytes of physical memory currently unused and available.
Gauge | boolean | true
MappingStrings | string | MIF.DMTF|System Memory Settings|001.2, MIF.UNIX|Host Physical Memory|6.1
Units | string | KiloBytes
FreeSpaceInPagingFiles | uint64 |
Description | string | 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.
Gauge | boolean | true
MappingStrings | string | MIF.DMTF|System Memory Settings|001.4
Units | string | KiloBytes
FreeVirtualMemory | uint64 |
Description | string | 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).
Gauge | boolean | true
MappingStrings | string | MIF.DMTF|System Memory Settings|001.6
Units | string | KiloBytes
LastBootUpTime | datetime |
Description | string | Time when the OperatingSystem was last booted.
MappingStrings | string | MIF.DMTF|General Information|001.5
LocalDateTime | datetime |
Description | string | OperatingSystem's notion of the local date and time of day.
MappingStrings | string | MIB.IETF|HOST-RESOURCES-MIB.hrSystemDate, MIF.DMTF|General Information|001.6
MaxNumberOfProcesses | uint32 |
Description | string | 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 | string | MIF.DMTF|Host System|001.6, MIB.IETF|HOST-RESOURCES-MIB.hrSystemMaxProcesses
MaxProcessesPerUser | uint32 |
Description | string | A value that indicates the maximum processes that a user can have associate with it.
MaxProcessMemorySize | uint64 |
Description | string | 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 | string | KiloBytes
Name | string |
Description | string | The inherited Name serves as key of an OperatingSystem instance within a ComputerSystem.
Key | boolean | true
MappingStrings | string | MIF.DMTF|Operating System|001.2
MaxLen | uint32 | 256
Override | string | Name
NumberOfLicensedUsers | uint32 |
Description | string | Number of user licenses for the OperatingSystem. If unlimited, enter 0.
NumberOfProcesses | uint32 |
Description | string | Number of process contexts currently loaded or running on the OperatingSystem.
Gauge | boolean | true
MappingStrings | string | MIF.DMTF|Host System|001.5, MIB.IETF|HOST-RESOURCES-MIB.hrSystemProcesses
NumberOfUsers | uint32 |
Description | string | Number of user sessions for which the OperatingSystem is currently storing state information.
Gauge | boolean | true
MappingStrings | string | MIF.DMTF|Host System|001.4, MIB.IETF|HOST-RESOURCES-MIB.hrSystemNumUsers
OSType | uint16 |
Description | string | A integer indicating the type of OperatingSystem.
ModelCorrespondence | string | CIM_OperatingSystem.OtherTypeDescription, CIM_SoftwareElement.TargetOperatingSystem
ValueMap | string | 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, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 113, 114, 115, 116, 117, 118, 119, 120, 121
Values | string | Unknown, Other, MACOS, ATTUNIX, DGUX, DECNT, Tru64 UNIX, OpenVMS, HPUX, AIX, MVS, OS400, OS/2, JavaVM, MSDOS, WIN3x, WIN95, WIN98, WINNT, WINCE, NCR3000, NetWare, OSF, DC/OS, Reliant UNIX, SCO UnixWare, SCO OpenServer, Sequent, IRIX, Solaris, SunOS, U6000, ASERIES, HP NonStop OS, HP NonStop OSS, BS2000, LINUX, Lynx, XENIX, VM, Interactive UNIX, BSDUNIX, FreeBSD, NetBSD, GNU Hurd, OS9, MACH Kernel, Inferno, QNX, EPOC, IxWorks, VxWorks, MiNT, BeOS, HP MPE, NextStep, PalmPilot, Rhapsody, Windows 2000, Dedicated, OS/390, VSE, TPF, Windows (R) Me, Caldera Open UNIX, OpenBSD, Not Applicable, Windows XP, z/OS, Microsoft Windows Server 2003, Microsoft Windows Server 2003 64-Bit, Windows XP 64-Bit, Windows XP Embedded, Windows Vista, Windows Vista 64-Bit, Windows Embedded for Point of Service, Microsoft Windows Server 2008, Microsoft Windows Server 2008 64-Bit, FreeBSD 64-Bit, RedHat Enterprise Linux, RedHat Enterprise Linux 64-Bit, Solaris 64-Bit, SUSE, SUSE 64-Bit, SLES, SLES 64-Bit, Novell OES, Novell Linux Desktop, Sun Java Desktop System, Mandriva, Mandriva 64-Bit, TurboLinux, TurboLinux 64-Bit, Ubuntu, Ubuntu 64-Bit, Debian, Debian 64-Bit, Linux 2.4.x, Linux 2.4.x 64-Bit, Linux 2.6.x, Linux 2.6.x 64-Bit, Linux 64-Bit, Other 64-Bit, Microsoft Windows Server 2008 R2, VMware ESXi, Microsoft Windows 7, CentOS 32-bit, CentOS 64-bit, Oracle Linux 32-bit, Oracle Linux 64-bit, eComStation 32-bitx, Microsoft Windows Server 2011, Microsoft Windows Server 2012, Microsoft Windows 8, Microsoft Windows 8 64-bit, Microsoft Windows Server 2012 R2, Microsoft Windows Server 2016, Microsoft Windows 8.1, Microsoft Windows 8.1 64-bit, Microsoft Windows 10, Microsoft Windows 10 64-bit
OtherTypeDescription | string |
Description | string | 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 | uint32 | 64
ModelCorrespondence | string | CIM_OperatingSystem.OSType
SizeStoredInPagingFiles | uint64 |
Description | string | The total number of KBytes that can be stored in the OperatingSystem's paging files. 0 indicates that there are no paging files.
MappingStrings | string | MIF.DMTF|System Memory Settings|001.3
Units | string | KiloBytes
TotalSwapSpaceSize | uint64 |
Description | string | 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 | string | KiloBytes
TotalVirtualMemorySize | uint64 |
Description | string | 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.
MappingStrings | string | MIF.DMTF|System Memory Settings|001.5
Units | string | KiloBytes
TotalVisibleMemorySize | uint64 |
Description | string | 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 | string | KiloBytes
Version | string |
Description | string | A string describing the Operating System's version number. The format of the version information is as follows: <Major Number>.<Minor Number>.<Revision> or <Major Number>.<Minor Number>.<Revision Letter>.
MappingStrings | string | MIF.DMTF|Operating System|001.3

### Inherited Properties

Name | Data Type | Class Origin
--- | --- | ---
Caption | string | CIM_ManagedElement
CommunicationStatus | uint16 | CIM_ManagedSystemElement
Description | string | CIM_ManagedElement
DetailedStatus | uint16 | CIM_ManagedSystemElement
ElementName | string | CIM_ManagedElement
EnabledDefault | uint16 | CIM_EnabledLogicalElement
EnabledState | uint16 | CIM_EnabledLogicalElement
Generation | uint64 | CIM_ManagedElement
HealthState | uint16 | CIM_ManagedSystemElement
InstallDate | datetime | CIM_ManagedSystemElement
InstanceID | string | CIM_ManagedElement
OperatingStatus | uint16 | CIM_ManagedSystemElement
OtherEnabledState | string | CIM_EnabledLogicalElement
PrimaryStatus | uint16 | CIM_ManagedSystemElement
RequestedState | uint16 | CIM_EnabledLogicalElement
Status | string | CIM_ManagedSystemElement
TimeOfLastStateChange | datetime | CIM_EnabledLogicalElement
TransitioningToState | uint16 | CIM_EnabledLogicalElement
AvailableRequestedStates | uint16[] | CIM_EnabledLogicalElement
OperationalStatus | uint16[] | CIM_ManagedSystemElement
StatusDescriptions | string[] | CIM_ManagedSystemElement

## Class Methods

### Local Class Methods

#### Reboot (uint32)

#### Method Qualifiers (Reboot)

Name | Data Type | Value
--- | --- | ---
Description | string | 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.

#### Method Parameters (Reboot)

Name | Type | Qualifiers
--- | --- | ---
Name | Data Type | Value

#### Shutdown (uint32)

#### Method Qualifiers (Shutdown)

Name | Data Type | Value
--- | --- | ---
Description | string | 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.

#### Method Parameters (Shutdown)

Name | Type | Qualifiers
--- | --- | ---
Name | Data Type | Value

### Inherited Class Methods

Name | Return Type | Class Origin
--- | --- | ---
RequestStateChange | uint32 | CIM_EnabledLogicalElement