Subroutine pm_set_program

Zweck

Legt die systemweite Performance Monitor-Programmierung fest.

Bibliothek

Leistungsüberwachungs-APIs-Bibliotheklibpmapi.a)

Syntax

#include <pmapi.h>

int pm_set_program ( *prog)
pm_prog_t *prog;

Beschreibung

Das Unterprogramm pm_set_program legt die systemweite Performance-Monitor-Programmierung fest. Die Einstellung enthält die zu zählenden Ereignisse und einen Modus, in dem gezählt werden kann. Die zu zählenden Ereignisse befinden sich in einer Liste von Ereignis-IDs. Die Bezeichner müssen aus den vom Unterprogramm pm_init zurückgegebenen Listen ausgewählt werden.

Der Zählmodus umfasst den Benutzermodus und/oder den Kernelmodus, den anfänglichen Zählstatus und den Prozessbaummodus. Der Prozessbaumstrukturmodus wird nur für den aufrufenden Prozess und seine untergeordneten Prozesse auf 'Ein' gesetzt. Die Standardwerte sind für den Benutzermodus und den Kernelmodus inaktiviert. In der Grundeinstellung wird die Zählung verzögert, bis das Unterprogramm pm_start aufgerufen wird, und die Aktivität aller im System laufenden Prozesse gezählt.

Enthält die Liste ein Ereignis, das mit einem Schwellenwert verwendet werden kann (wie in der Unterroutine pm_init angegeben), kann auch ein Schwellenwert angegeben werden.

Auf einigen Plattformen können Ereignisgruppen anstelle einzelner Ereignisse angegeben werden. Dazu wird das Bitfeld is_group im Modus gesetzt und die Gruppen-ID in das erste Element des Ereignis-Arrays eingefügt. (Die Gruppen-ID wurde durch pm_init ermittelt).

Parameter

Element Beschreibung
* prog Gibt die Ereignisse und Modi an, die in der Performance Monitor-Konfiguration zu verwenden sind Die folgenden Modi werden unterstützt:
PM_USER
Zählt Prozesse, die im Benutzermodus ausgeführt werden (Standardeinstellung ist 'Aus')
PM_KERNEL
Zählt Prozesse, die im Kernelmodus ausgeführt werden (Standardeinstellung ist 'Aus')
PM_COUNT
Beginnt sofort mit der Zählung (Standardeinstellung ist "Nicht mit der Zählung beginnen")
PM_PROCTREE
Setzt die Zählung nur für den aufrufenden Prozess und seine untergeordneten Prozesse auf 'Ein' (Standardeinstellung ist 'Aus').

Rückgabewerte

Element Beschreibung
0 Operation wurde erfolgreich beendet.
Positive error code Verwenden Sie die Subroutine pm_error , um den Fehlercode zu decodieren.

Fehlercodes

Weitere Informationen finden Sie in der Beschreibung der Subroutine pm_error.

Dateien

Element Beschreibung
/usr/include/pmapi.h Definiert Standardmakros, Datentypen und Subroutinen.