perfstat_memory_page 子例程

用途

检索多个页面大小的使用情况统计信息。

Perfstat 库 (libperfstat.a)

语法

#include <libperfstat.h>

int perfstat_memory_page ( psize, userbuff, sizeof_userbuff, desired_number )
perfstat_psize_t *psize;
perfstat_memory_total_wpar_t *userbuff;
size_t sizeof_userbuff;
int desired_number;

描述

perfstat_memory_page 子例程返回对应于不同页面大小的统计信息。

要获取受支持页面大小的数量,必须将 psize 参数和 userbuff 参数指定为 NULL ,并且必须将 desired_number 参数的值设置为零。

要获取受支持页面大小的统计信息,请在 psize 参数中指定页面大小。 desired_number 参数指定要收集的不同页面大小统计信息的数量。 必须分配 userbuff 参数。

参数

描述
psize 指定要收集统计信息的页面大小。
用户缓冲区 指向要使用 perfstat_memory_page_t 结构填充的内存区域。
sizeof_userbuff 指定 perfstat_memory_page_t 结构的大小。
所需数量 指定要收集的不同页面大小统计信息的数目。

返回值

成功完成后,将返回已填充的 perfstat_memory_page_t 结构数。 如果未使用指定的页面大小,那么返回的值为 0。 例如,如果用户指定了 4K 页大小,那么返回值为 0 ,因为未使用指定的页大小。

如果不成功,则返回 -1 ,并设置 errno 全局变量。

错误代码

如果满足以下条件,那么 perfstat_memory_page 子例程不成功:

描述
EINVAL 其中一个参数无效

文件

libperfstat.h 文件定义标准宏,数据类型和子例程。