struct __sysctl_args {
int *name; /* integer vector describing variable */
int nlen; /* length of this vector */
void *oldval; /* 0 or address where to store old value */
size_t *oldlenp; /* available room for old value,
overwritten by actual size of old value */
void *newval; /* 0 or address of new value */
size_t newlen; /* size of new value */
};
此调用是 Linux 特定的,不应在旨在可移植的程序中使用。自 1.3.57 版本以来,Linux 中就存在sysctl() 调用。它起源于 4.4BSD。只有 Linux 具有/proc/sys镜像,并且 Linux 和 4.4BSD 的对象命名方案有所不同,但是sysctl(2) 函数的声明在两者中是相同的。