rs_getassociativity 子例程

用途

获取某个资源的硬件关联值。

标准 C 库 (libc.a)

语法

#include <sys/rset.h>
int rs_getassociativity (type, id, assoc_array, array_size)
unsigned int type;
unsigned int id;
unsigned int *assoc_array;
unsigned int array_size;

描述

rs_getassociativity 子例程返回所指定资源的硬件关联性值的数组。

这是一个特殊的目的子例程,用于需要硬件关联性值信息的专用根应用程序。 为非 root 用户应用程序提供了 rs_getinfo里斯特拉德rs_numrads 子例程,以发现系统硬件拓扑。

调用过程必须具有 root 用户权限才能获取硬件关联性值。

参数

描述
TYPE 指定所请求的关联值的资源类型。 支持为处理器检索值的唯一值是 R_PROCS。
标识 指定要请求其关联性值的逻辑资源标识。
关联数组 指定用于接收关联性值的无符号整数的数组的地址。
数组大小 指定 关联数组中的无符号整数数。

返回值

如果成功,那么将返回值 0。 关联数组 参数数组包含该资源的关联性值。 数组中的第一个条目指示返回的关联度值的数目。 如果硬件系统未提供系统拓扑数据,那么将在第一个数组条目中返回值 0。 如果不成功,将返回 -1 的值,并设置 errno 全局变量来指示错误。

错误代码

如果以下一个或多个条件成立,那么 rs_getassociativity 子例程不成功:
描述
EINVAL 发生了下列其中一种情况:
  • 数组大小 参数已指定为 0。
  • 指定了无效的 类型 参数。
ENODEV 由参数 标识 指定的资源不存在。
EFAULT 地址无效。
EPERM 调用进程不具有 root 用户权限。