Solaris_Performance1.0.mof revision 7c478bd95313f5f23a4c958a745db2134aa03244
/*
* CDDL HEADER START
*
* The contents of this file are subject to the terms of the
* Common Development and Distribution License, Version 1.0 only
* (the "License"). You may not use this file except in compliance
* with the License.
*
* You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
* See the License for the specific language governing permissions
* and limitations under the License.
*
* When distributing Covered Code, include this CDDL HEADER in each
* file and include the License file at usr/src/OPENSOLARIS.LICENSE.
* If applicable, add the following below this CDDL HEADER, with the
* fields enclosed by brackets "[]" replaced with your own identifying
* information: Portions Copyright [yyyy] [name of copyright owner]
*
* CDDL HEADER END
*/
/*
* Title: Resource Utilization and Performance Monitoring
*
* Description: Classes providing visibility to computing resource metrics.
*
* Date: %G%
*
* Version: %I%
*
* Copyright (c) 2001 by Sun Microsystems, Inc.
* All rights reserved.
*
* ident "%Z%%M% %I% %E% SMI"
*
*/
/*
* User and Project entities.
*/
//==================================================================
// Solaris_ActiveUser
//==================================================================
[Provider("java:com.sun.wbem.solarisprovider.srm.Solaris_ActiveUser"),
"Represents a UserAccount that is actively "
"running on an OperatingSystem.")
]
{
[Propagated("CIM_OperatingSystem.CSCreationClassName"),
Key,
Description ("The scoping ComputerSystem's CreationClassName."),
MaxLen (256)
]
[Propagated("CIM_OperatingSystem.CSName"),
Key,
Description ("The scoping ComputerSystem's Name."),
MaxLen (256)
]
[Propagated("CIM_OperatingSystem.CreationClassName"),
Key,
Description ("The scoping OperatingSystem's CreationClassName."),
MaxLen (256)
]
[Propagated("CIM_OperatingSystem.Name"),
Key,
Description ("The scoping OperatingSystem's Name."),
MaxLen (256)
]
[Key,
"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)
]
[Read,
Description("User Name"),
MaxLen (256)
]
"Get properties for all instances of Solaris_ActiveUser"
" as an array of strings. Each string contains the values"
" of the UserID and UserName properties for a"
" single instance.")
]
[Key,
Read,
Description("User ID")
]
};
//==================================================================
// Solaris_ActiveProject
//==================================================================
[Provider("java:com.sun.wbem.solarisprovider.srm.Solaris_ActiveProject"),
Description("Represents a Project that is actively"
"running on an OperatingSystem.")
]
{
[Propagated("CIM_OperatingSystem.CSCreationClassName"),
Key,
Description ("The scoping ComputerSystem's CreationClassName."),
MaxLen (256)
]
[Propagated("CIM_OperatingSystem.CSName"),
Key,
Description ("The scoping ComputerSystem's Name."),
MaxLen (256)
]
[Propagated("CIM_OperatingSystem.CreationClassName"),
Key,
Description ("The scoping OperatingSystem's CreationClassName."),
MaxLen (256)
]
[Propagated("CIM_OperatingSystem.Name"),
Key,
Description ("The scoping OperatingSystem's Name."),
MaxLen (256)
]
[Key,
"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)
]
[Key,
Read,
Description("Project Name"),
MaxLen (256)
]
[Read,
Description("Project ID")
]
"Get properties for all instances of Solaris_ActiveProject"
" as an array of strings. Each string contains the values"
" of the ProjectID and ProjectName properties for a"
" single instance.")
]
};
/*
* Statistical properties of Processes and Process Aggregates.
*/
//==================================================================
// Solaris_ProcessStatisticalInformation
//==================================================================
[
Description("Raw resource utilization measurements for a process.")
]
{
// CPU state times
[Read,
"The cumulative number of seconds that this process "
"has spent in User mode over its lifetime."),
Units("Seconds")
]
[Read,
"The cumulative number of seconds that this process "
"has spent in System mode over its lifetime."),
Units("Seconds")
]
[Read,
"The cumulative number of seconds that this process "
"has spent in System Traps over its lifetime."),
Units("Seconds")
]
[Read,
"The cumulative number of seconds that this process "
"has spent sleeping in Text Page Faults over its lifetime."),
Units("Seconds")
]
[Read,
"The cumulative number of seconds that this process "
"has spent sleeping in Data Page Faults over its lifetime."),
Units("Seconds")
]
[Read,
"The cumulative number of seconds that this process "
"has spent sleeping in System Page Faults over its lifetime."),
Units("Seconds")
]
[Read,
"The cumulative number of seconds that this process "
"has spent sleeping on User Lock Waits over its lifetime."),
Units("Seconds")
]
[Read,
"The cumulative number of seconds that this process "
"has spent sleeping in all other ways over its lifetime."),
Units("Seconds")
]
[Read,
"The cumulative number of seconds that this process "
"has spent Waiting for CPU over its lifetime."),
Units("Seconds")
]
[Read,
"The cumulative number of seconds that this process "
"has spent Stopped over its lifetime."),
Units("Seconds")
]
// Event counts
[Read,
"The cumulative number of Minor Page Faults engendered by the "
"process over its lifetime.")
]
[Read,
"The cumulative number of Major Page Faults engendered by the "
"process over its lifetime.")
]
[Read,
"The cumulative number of swap operations engendered by the "
"process over its lifetime.")
]
[Read,
"The cumulative number of blocks Read by the process "
"over its lifetime.")
]
[Read,
"The cumulative number of blocks Written by the process "
"over its lifetime.")
]
[Read,
"The cumulative number of Messages Received by the process "
"over its lifetime.")
]
[Read,
"The cumulative number of Messages Sent by the process "
"over its lifetime.")
]
[Read,
"The cumulative number of Signals taken by the "
"process over its lifetime.")
]
[Read,
"The cumulative number of Voluntary Context Switches "
"made by the process over its lifetime.")
]
[Read,
"The cumulative number of Involuntary Context Switches "
"made by the process over its lifetime.")
]
[Read,
"The cumulative number of system calls made by the "
"process over its lifetime.")
]
[Read,
"The cumulative number of character I/O bytes "
"Read and Written by the process over its lifetime."),
Units ("Bytes")
]
// Memory usage statistics
[Read,
"The total number of KiloBytes of memory consumed by the "
"process heap at the time that it is sampled."),
Units ("KiloBytes")
]
[Read,
"The size of the process virtual address space "
"in KiloBytes."),
Units ("KiloBytes")
]
[Read,
Description("The resident set size of the process in KiloBytes "),
Units ("KiloBytes")
]
// Composite statistics
[Read,
Description("The percent CPU time used by the process.")
]
[Read,
"The ratio of the process resident set size to "
"physical memory.")
]
[Read,
"Time in User mode and System mode spent by the process,"
"in milliseconds. If this information is not available,"
"a value of 0 should be used."),
Units("MilliSeconds")
]
[Read,
"The number of threads active in the current Process. ")
]
[Read,
"The system clock time at which the sample was taken.") ]
[Override ("Name"),
Key,
Description ("Process ID of the owning process.")
]
};
//==================================================================
// Solaris_UserProcessAggregateStatisticalInformation
//==================================================================
[Provider("java:com.sun.wbem.solarisprovider.srm.Solaris_UserProcessAggregateStatisticalInformation"),
"Accumulated resource utilization measurements for "
"an aggregation of processes sharing a common User. "
"The (inherited) ProcessStatisticalInformation properties "
"are populated by summing the underlying process' usage. ")
]
{
[Description("The number of processes measured in the aggregate.") ]
"Get properties for all instances of"
" Solaris_UserProcessAggregateStatisticalInformation"
" as an array of strings. Each string contains the values"
" of a single instance's properties. The values are "
" separated by whitespace and appear in the same order "
" as they do in the MOF definition of the class.")
]
[Override ("Name"),
Key,
"The unique User ID (in String form) of aggregate's owner.")
]
};
//==================================================================
// Solaris_ProjectProcessAggregateStatisticalInformation
//==================================================================
[Provider("java:com.sun.wbem.solarisprovider.srm.Solaris_ProjectProcessAggregateStatisticalInformation"),
"Accumulated resource utilization measurements for "
"an aggregation of processes sharing a common Project. "
"The (inherited) ProcessStatisticalInformation properties "
"are populated by summing the underlying process' usage. ")
]
{
[Description("The number of processes measured in the aggregate.") ]
"Get properties for all instances of"
" Solaris_ProjectProcessAggregateStatisticalInformation"
" as an array of strings. Each string contains the values"
" of a single instance's properties. The values are "
" separated by whitespace and appear in the same order "
" as they do in the MOF definition of the class.")
]
[Override ("Name"),
Key,
"The unique Project name of the aggregate's owner.")
]
};
/*
* Association between a Process and its statistics.
*/
//==================================================================
// Solaris_ProcessStatistics
//==================================================================
Provider("java:com.sun.wbem.solarisprovider.srm.Solaris_ProcessStatistics"),
Description("An association linking a Solaris_Process and its "
"Solaris_ProcessStatisticalInformation instance.")
]
{
[Override ("Element"),
Key,
Description ("The Process whose utilization is being monitored.")
]
[Override ("Stats"),
Key,
"The statistical information object that contains "
"utilization data for the associated Process.")
]
};
/*
*/
/*
//==================================================================
// Solaris_UserProcessStatistics
//==================================================================
[Association,
Aggregation,
Provider("java:com.sun.wbem.solarisprovider.srm.Solaris_UserProcessStatistics"),
Description("A link between a User active on a system and the "
"Statistics of all Processes running on its behalf.")
]
class Solaris_UserProcessStatistics: CIM_SystemStatistics
{
[Override ("Element"),
Description ("The User active on a System")
]
Solaris_ActiveUser REF Element;
[Override ("Stats"),
Description ("The Process Statistics belonging to the User.")
]
Solaris_ProcessStatisticalInformation REF Stats;
};
//==================================================================
// Solaris_ProjectProcessStatistics
//==================================================================
[Association,
Aggregation,
Provider("java:com.sun.wbem.solarisprovider.srm.Solaris_ProjectProcessStatistics"),
Description("A link between a Project active on a system and the "
"Statistics of all Processes running on its behalf.")
]
class Solaris_ProjectProcessStatistics: CIM_SystemStatistics
{
[Override ("Element"),
Description ("The Project active on a System")
]
Solaris_ActiveProject REF Element;
[Override ("Stats"),
Description ("The Process Statistics belonging to the Project")
]
Solaris_ProcessStatisticalInformation REF Stats ;
};
*/
//==================================================================
// Solaris_ActiveUserProcessAggregateStatistics
//==================================================================
Provider("java:com.sun.wbem.solarisprovider.srm.Solaris_ActiveUserProcessAggregateStatistics"),
Description("A link between an User active on a system and the "
"aggregated resource usage of its Process(es).")
]
{
[Override ("Element"),
Key,
Description ("The User active on a System.")
]
[Override ("Stats"),
Key,
Description ("The Process Aggregate Statistics for the User.")
]
};
//==================================================================
// Solaris_ActiveProjectProcessAggregateStatistics
//==================================================================
Provider("java:com.sun.wbem.solarisprovider.srm.Solaris_ActiveProjectProcessAggregateStatistics"),
Description("A link between a Project active on a system and the "
"aggregated resource usage of its Process(es).")
]
{
[Override ("Element"),
Key,
Description ("The Project active on a System.")
]
[Override ("Stats"),
Key,
Description ("The Process Aggregate Statistics for the Project.")
]
};