pm_get_program Subroutine

Purpose

Retrieves systemwide Performance Monitor settings.

Library

Performance Monitor APIs Library (libpmapi.a)

Syntax

#include <pmapi.h>

int pm_get_program ( *prog)
pm_prog_t *prog;

Description

The pm_get_program subroutine retrieves the current systemwide Performance Monitor settings. This includes mode information and the events being counted, which are in a list of event identifiers. The identifiers come from the lists returned by the pm_init subroutine.

The counting mode includes user mode, the kernel mode, the current counting state, and the process tree mode. If the process tree mode is on, the counting applies only to the calling process and its decendants.

If the list includes an event which can be used with a threshold (as indicated by the pm_init subroutine), a threshold value is also returned.

If the events are represented by a group ID, then the is_group bit is set in the mode, and the first element of the events array contains the group ID. The other elements of the events array are not meaningful.

Parameters

Item Description
prog Returns which Performance Monitor events and modes are set. Supported modes are:
PM_USER
Counting processes running in user mode
PM_KERNEL
Counting processes running in kernel mode
PM_COUNT
Counting is on
PM_PROCTREE
Counting applies only to the calling process and its descendants

Return Values

Item Description
0 No errors occurred.
Positive error code Refer to the pm_error Subroutine to decode the error code.

Error Codes

Refer to the pm_error Subroutine.

Files

Item Description
/usr/include/pmapi.h Defines standard macros, data types, and subroutines.