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 | 发生了下列其中一种情况:
|
| ENODEV | 由参数 标识 指定的资源不存在。 |
| EFAULT | 地址无效。 |
| EPERM | 调用进程不具有 root 用户权限。 |