PMC_READ(3) | FreeBSD Library Functions Manual | PMC_READ(3) |
名称
pmc_read, pmc_rw, pmc_write, — ハードウェア性能カウンタを読み書きするライブラリ
Performance Counters Library (libpmc, -lpmc)書式
#include < pmc.h> int
pmc_read( pmc_id_t pmc, pmc_value_t *value);
int
pmc_rw( pmc_id_t pmc, pmc_value_t newvalue, pmc_value_t *oldvaluep);
int
pmc_write( pmc_id_t pmc, pmc_value_t value);
解説
これらの関数は、PMC の現在の値を読み書きします。関数 pmc_read() は、引数 pmc によって指定された現在の値を読み込み、引数 value によって指定された位置にそれを書き込みます。
関数 pmc_write() は、引数 pmc によって指定された PMC の現在の値を引数 value によって指定された値に設定します。
関数 pmc_rw() は、読み込みと書き込みを単一の不可分な操作に結合します。
書き込み操作のために、PMC は、休止状態になるべきです。
戻り値
Upon successful completion, the value 0 is returned; otherwise the value -1 is returned and the global variable errno is set to indicate the error.エラー
これらの関数への呼び出しは、次のエラーで失敗します:- [ EBUSY]
- 現在実行している PMC を指定した書き込み操作。
- [ EINVAL]
- 引数 pmc は、読み込み可能でない PMC を指定しました。
- [ EINVAL]
- 引数 pmc によって指定された PMC が、現在のプロセスによって所有されていませんでした。
November 25, 2007 | FreeBSD |