.\" Copyright (c) 1993
.\"	The Regents of the University of California.  All rights reserved.
.\"
.\" Redistribution and use in source and binary forms, with or without
.\" modification, are permitted provided that the following conditions
.\" are met:
.\" 1. Redistributions of source code must retain the above copyright
.\"    notice, this list of conditions and the following disclaimer.
.\" 2. Redistributions in binary form must reproduce the above copyright
.\"    notice, this list of conditions and the following disclaimer in the
.\"    documentation and/or other materials provided with the distribution.
.\" 3. All advertising materials mentioning features or use of this software
.\"    must display the following acknowledgement:
.\"	This product includes software developed by the University of
.\"	California, Berkeley and its contributors.
.\" 4. Neither the name of the University nor the names of its contributors
.\"    may be used to endorse or promote products derived from this software
.\"    without specific prior written permission.
.\"
.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
.\" ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.\"	@(#)sysctl.3	8.4 (Berkeley) 5/9/95
.\" %FreeBSD: src/lib/libc/gen/sysctl.3,v 1.33.2.12 2001/12/14 18:33:51 ru Exp %
.\"
.\" $FreeBSD$
.Dd January 23, 2001
.Dt SYSCTL 3
.Os
.Sh ̾��
.Nm sysctl ,
.Nm sysctlbyname ,
.Nm sysctlnametomib
.Nd �����ƥ���������ޤ�������
.Sh �饤�֥��
.Lb libc
.Sh ��
.In sys/types.h
.In sys/sysctl.h
.Ft int
.Fn sysctl "int *name" "u_int namelen" "void *oldp" "size_t *oldlenp" "void *newp" "size_t newlen"
.Ft int
.Fn sysctlbyname "const char *name" "void *oldp" "size_t *oldlenp" "void *newp" "size_t newlen"
.Ft int
.Fn sysctlnametomib "const char *name" "int *mibp" "size_t *sizep"
.Sh ����
.Fn sysctl
�ؿ��ϥ����ƥ�������Ф������������ø��Τ���ץ�������
�����ƥ���������Ǥ���褦�ˤ��ޤ���
.Fn sysctl
�����ѤǤ������ϡ�������
���ȥ�󥰡�����ӥơ��֥�ǹ�������ޤ�������ϡ�
.Xr sysctl 8
�桼�ƥ���ƥ�
����Ѥ��ƥ��ޥ�ɥ��󥿥ե�����������Ф����������Ǥ��ޤ���
.Pp
�ʹߤ����Τ˵��ܤ�����������ơ�
.Fn sysctl
�ϡ��׵ᤵ�줿�ǡ����ΰ�Ӥ���
���ʥåץ���åȤ��֤��ޤ�����������ݤĤ���ˡ�����ؤΰ���Хåե���
���å������Τǡ��ǡ����ϥ֥��å��ʤ��˥��ԡ��Ǥ��ޤ���
.Fn sysctl
�θƤӽФ��ϥǥåɥ��å�����򤹤뤿��˥��ꥢ�벽����Ƥ��ޤ���
.Pp
���֤� ``��������١���'' (Management Information Base��MIB)
���������̾������Ѥ��Ƶ��Ҥ��졢
.Fa name
�˥ꥹ�Ȥ���ޤ���
.Fa name
������
.Fa namelen
������������Ǥ���
.Pp
.Fn sysctlbyname
�ؿ��ϡ�̾����
ASCII
ɽ����������졢������̾���٥��ȥ��
����Ū�˸������ޤ�������ʳ��ϡ�ɸ���
.Fn sysctl
�ؿ���Ʊ���褦�˵�ǽ���ޤ���
.Pp
�����
.Fa oldp
�ǻ��ꤷ���Хåե��˥��ԡ�����ޤ����Хåե��Υ������ϡ��Ƥ�
��������
.Fa oldlenp
�ǻ��ꤷ�����֤�Ϳ�����ޤ������ΰ��֤ϡ��ƤӽФ���
����˴�λ�����太��ӥ��顼������
.Er ENOMEM
���֤ä���˥��ԡ������ǡ�����
�̤�Ϳ���ޤ������ѤǤ���ǡ������̤�����ΥХåե�����������礭����硢
�ƤӽФ��ϡ�����Хåե��ˤ��礦�������̤Υǡ���������Ϳ�������顼������
.Er ENOMEM
���֤�ޤ����Ť��ͤ����פʾ��ϡ�
.Fa oldp
��
.Fa oldlenp
��
NULL
��
���ꤷ�Ƥ���������
.Pp
���ѤǤ���ǡ����Υ���������ꤹ��ˤϡ�
.Fa oldp
��
NULL
�ѥ�᡼������ꤷ��
.Fn sysctl
��ƤӽФ��ޤ������ѤǤ���ǡ����Υ���������
.Fa oldlenp
�λؤ����֤�
�֤���ޤ������ˤ�äƤ϶��֤��̤����ˤ��Ѳ����뤳�Ȥ�����ޤ���
���Τ褦�����ξ�硢�����ƥ���̤��ڤ�夲�褦�Ȥ��ޤ����֤��줿������
�������θ�ޤ�ʤ��ǡ������֤��ƤӽФ��˽�ʬ�Ǥ���褦�ˤ��뤿��Ǥ���
.Pp
�������ͤ����ꤹ�뤿�ᡢ
.Fa newp
�ϡ�Ĺ����
.Fa newlen
�ΥХåե���ؤ��褦��
���ꤵ��ޤ������ΥХåե����顢�׵ᤵ�줿�ͤ���������ޤ����������ͤ�
���ꤵ��ʤ��ȡ�
.Fa newp
��
NULL
�����ꤵ�졢
.Fa newlen
��
0 �����ꤵ��ޤ���
.Pp
.Fn sysctlnametomib
�ؿ��ϡ�ASCII ɽ����̾��������դ���
������̾���٥��ȥ�򸡺�����
.Fa mibp
�ǻؤ���� mib ������ˡ�����ɽ�����Ǽ�����֤��ޤ���
mib ����������ǿ��ϡ��ƤӽФ�����
.Fa sizep
�ǻ��ꤵ�줿��꤬Ϳ���ޤ���
�ƤӽФ�������������ˤϡ����ξ��ˤϡ����ԡ����줿���ǿ���Ϳ�����ޤ���
��̤�
.Fa mib
��
.Fa size
�ϡ����
.Fn sysctl
�ƤӽФ��˻��Ѥ��ơ�
�׵ᤷ�� ASCII ̾�˴�Ϣ�դ����Ƥ���ǡ����������ǽ�Ǥ���
Ʊ��̾�����ѿ��򷫤��֤��׵᤹�륢�ץꥱ������󤬻��Ѥ��뤳�Ȥ�
���Υ��󥿥ե������ϰտޤ��Ƥ��ޤ� (
.Fn sysctl
�ؿ��ϡ�
.Fn sysctlbyname
�ؿ��Ǽ¸�������׵��Ʊ�����Ȥ��� 1/3 �λ��֤Ǽ¹Ԥ��ޤ�)��
.Fn sysctlbyname
�ؿ��ϡ�
mib �����ֻ��������Ƥ���˺Ǹ�ι������Ǥ��ղä��뤿��ˤ�ͭ�ѤǤ���
�㤨�С�PID �� 100 ̤���Υץ������Υץ�����������������ˤϡ�
���Τ褦�ˤ��ޤ�:
.Pp
.Bd -literal -offset indent -compact
int i, mib[4];
size_t len;
struct kinfo_proc kp;

/* Fill out the first three components of the mib */
len = 4;
sysctlnametomib("kern.proc.pid", mib, &len);

/* Fetch and print entries for pid's < 100 */
for (i = 0; i < 100; i++) {
	mib[3] = i;
	len = sizeof(kp);
	if (sysctl(mib, 4, &kp, &len, NULL, 0) == -1)
		perror("sysctl");
	else if (len > 0)
		printkproc(&kp);
}
.Ed
.Pp
1 �־�Υ�٥��̾����
.Aq Pa sys/sysctl.h
��
CTL_
��Ƭ���դ����������ޤ���
���ΤȤ���Ǥ������Υ�٥뤪��Ӥ���ʲ��Υ�٥�ϡ������˥ꥹ�Ȥ���
���󥯥롼�ɥե�������ˤ��ꡢ�ʹߤθ��̤Υ����������������ޤ���
.Pp
.Bl -column CTLXMACHDEPXXX "Next level namesXXXXXX" -offset indent
.It Sy "̾��	���Υ�٥�̾	����"
.It "CTL\_DEBUG	sys/sysctl.h	�ǥХå�"
.It "CTL\_VFS	sys/mount.h	�ե����륷���ƥ�"
.It "CTL\_HW	sys/sysctl.h	������ CPU, I/O"
.It "CTL\_KERN	sys/sysctl.h	�����ͥ�κǹ�³�"
.It "CTL\_MACHDEP	sys/sysctl.h	�ޥ����¸"
.It "CTL\_NET	sys/socket.h	�ͥåȥ��"
.It "CTL\_USER	sys/sysctl.h	�桼����٥�"
.It "CTL\_VM	vm/vm_param.h	���ۥ���"
.El
.Pp
���Ȥ��С������ƥ�ǵ��Ƥ����ץ������κ��������Ф���ˡ��
���ΤȤ���Ǥ���
.Pp
.Bd -literal -offset indent -compact
int mib[2], maxproc;
size_t len;

mib[0] = CTL_KERN;
mib[1] = KERN_MAXPROC;
len = sizeof(maxproc);
sysctl(mib, 2, &maxproc, &len, NULL, 0);
.Ed
.Pp
�����ƥ�桼�ƥ���ƥ���ɸ�ม���ѥ�����Ф���ˡ�ϼ��ΤȤ���Ǥ���
.Pp
.Bd -literal -offset indent -compact
int mib[2];
size_t len;
char *p;

mib[0] = CTL_USER;
mib[1] = USER_CS_PATH;
sysctl(mib, 2, NULL, &len, NULL, 0);
p = malloc(len);
sysctl(mib, 2, p, &len, NULL, 0);
.Ed
.Ss CTL_DEBUG
�ǥХå��ѿ��ϥ����ƥऴ�Ȥˤ��ޤ��ޤǤ����ǥХå��ѿ����ɲäޤ���
�������Ȥ��������ǧ������褦��
.Fn sysctl
�򥳥�ѥ��뤷ľ��ɬ�פϤ���ޤ��󡣼¹ԤΤ��Ӥˡ�
.Fn sysctl
���������ͥ뤫��ǥХå��ѿ���
�ꥹ�Ȥ�����������θ����ͤ�ɽ�����뤫��Ǥ��������ƥ��
20 �Ĥ�
.Ns ( Va struct ctldebug )
�ѿ���������ޤ���������
.Nm debug0
����
.Nm debug19
�Ȥ���
̾���ˤʤ�ޤ����������̸Ĥ��ѿ��Ȥ�����������Τǡ��б��ѿ��ΰ��֤�
���̤˽�����Ǥ��ޤ����������ϡ��ѿ���ʣ���ξ��ǽ�������줿�Ȥ���
���顼��Ф��ơ�Ʊ���ѿ���ʣ���˻��Ѥ����Τ���򤷤ޤ������Ȥ��С��ѿ�
.Nm dospecialcheck
��ǥХå��ѿ��Ȥ��ƥ������ݡ��Ȥ�����ˤϡ����������
���ѤǤ��ޤ���
.Bd -literal -offset indent -compact
int dospecialcheck = 1;
struct ctldebug debug5 = { "dospecialcheck", &dospecialcheck };
.Ed
.Ss CTL_VFS
���Ƥ���
2 ��٥��̾��
VFS_GENERIC
�ϡ����٤ƤΥե����륷���ƥ�˴ؤ���
���̾�����������Τ˻��Ѥ��ޤ����������
3 ��٥�μ��̻Ҥ�
1 �Ĥ�
VFS_MAXTYPENUM
�ǡ��Ǥ��礭���ե����륷���ƥॿ���פ��ֹ��Ϳ���ޤ����̤�
��
3 ��٥�μ��̻Ҥ�
VFS_CONF
�ǡ���
4 ��٥�μ��̻ҤȤ���Ϳ����줿
�ե����륷���ƥॿ���פ˴ؤ��빽�����֤��ޤ�
(
����ˡ�����
.Xr getvfsbyname 3
�򻲾�
)
���Ĥ����
2 ��٥�μ��̻Ҥϡ�
.Xr statfs 2
�ƤӽФ��ޤ���
VFS_CONF
��
�֤��ե����륷���ƥॿ�����ֹ�Ǥ����ƥե����륷���ƥ�ˤĤ������ѤǤ�����
3 ��٥�μ��̻Ҥϡ����Υե����륷���ƥ�Υޥ���Ȱ�����¤���������
�إå��ե�����ǻ��ꤵ��ޤ���
.Ss CTL_HW
CTL_HW
��٥�˴ؤ������ѤǤ��륹�ȥ�󥰤������ˤĤ��Ƥϰʲ��Ǿܤ���
�������ޤ����ѹ���ǽ������ϡ�Ŭ�ڤ��ø��Τ���ץ��������ͤ�
�ѹ��Ǥ��뤫�ɤ����򼨤��ޤ���
.Bl -column "Second level nameXXXXXX" integerXXX -offset indent
.It Sy "�� 2 ��٥�̾	������	�ѹ���ǽ"
.It "HW\_MACHINE	���ȥ��	������"
.It "HW\_MODEL	���ȥ��	������"
.It "HW\_NCPU	����	������"
.It "HW\_BYTEORDER	����	������"
.It "HW\_PHYSMEM	����	������"
.It "HW\_USERMEM	����	������"
.It "HW\_PAGESIZE	����	������"
.It "HW\_FLOATINGPOINT	����	������"
.It "HW\_MACHINE\_ARCH	���ȥ��	������"
.\".It "HW\_DISKNAMES	����	������"
.\".It "HW\_DISKSTATS	����	������"
.El
.Pp
.Bl -tag -width 6n
.It Li HW_MACHINE
�ޥ��󥯥饹
.It Li HW_MODEL
�ޥ����ǥ�
.It Li HW_NCPU
CPU
�ο�
.It Li HW_BYTEORDER
�Х��Ƚ�
(4,321���ޤ��� 1,234)
.It Li HW_PHYSMEM
ʪ������ΥХ���
.It Li HW_USERMEM
�����ͥ�Ǥʤ�����ΥХ���
.It Li HW_PAGESIZE
���եȥ������Υڡ���������
.It Li HW_FLOATINGPOINT
��ư���������ݡ��Ȥ��ϡ��ɥ������ˤ�����ϥ����Ǥʤ�
.It Li HW_MACHINE_ARCH
�ޥ���ϥ������ƥ����㥿���פ˰�¸
.\".It Fa HW_DISKNAMES
.\".It Fa HW_DISKSTATS
.El
.Ss CTL_KERN
CTL_KERN
��٥�˴ؤ������ѤǤ��륹�ȥ�󥰤������ξ���ˤĤ��ưʲ��˾ܤ���
�������ޤ����ѹ���ǽ������ϡ����������ø��Τ���ץ��������ͤ�
�ѹ����뤫�ɤ����򼨤��ޤ��������������ѤǤ���ǡ����Υ����פϡ�
�ץ��������󡢥����ƥ�
vnode���������ե�����Υ���ȥꡢ
�롼�ƥ��󥰥ơ��֥�Υ���ȥꡢ���ۥ������ס����ʿ�����򡢤����
�����å��졼�Ⱦ���Ǥ���
.Pp
.Bl -column "KERNXMAXFILESPERPROCXXX" "struct clockrateXXX" -offset indent
.It Sy "�� 2 ��٥�̾	������	�ѹ���ǽ"
.It "KERN\_ARGMAX	����	������"
.It "KERN\_BOOTFILE	���ȥ��	�Ϥ�"
.It "KERN\_BOOTTIME	struct timeval	������"
.It "KERN\_CLOCKRATE	struct clockinfo	������"
.It "KERN\_FILE	struct file	������"
.It "KERN\_HOSTID	����	�Ϥ�"
.It "KERN\_HOSTNAME	���ȥ��	�Ϥ�"
.It "KERN\_JOB\_CONTROL	����	������"
.It "KERN\_MAXFILES	����	�Ϥ�"
.It "KERN\_MAXFILESPERPROC	����	�Ϥ�"
.It "KERN\_MAXPROC	����	������"
.It "KERN\_MAXPROCPERUID	����	�Ϥ�"
.It "KERN\_MAXVNODES	����	�Ϥ�"
.It "KERN\_NGROUPS	����	������"
.It "KERN\_NISDOMAINNAME	���ȥ��	�Ϥ�"
.It "KERN\_OSRELDATE 	����	������"
.It "KERN\_OSRELEASE	���ȥ��	������"
.It "KERN\_OSREV	����	������"
.It "KERN\_OSTYPE	���ȥ��	������"
.It "KERN\_POSIX1	����	������"
.It "KERN\_PROC	struct proc	������"
.It "KERN\_PROF	node	Ŭ���Բ�"
.It "KERN\_QUANTUM	����	�Ϥ�"
.It "KERN\_SAVED\_IDS	����	������"
.It "KERN\_SECURELVL	����	�߾�Τ�"
.It "KERN\_UPDATEINTERVAL	����	������"
.It "KERN\_VERSION	���ȥ��	������"
.It "KERN\_VNODE	struct vnode	������"
.El
.Pp
.Bl -tag -width 6n
.It Li KERN_ARGMAX
.Xr execve 2
�ؤΰ����κ���Х��ȿ�
.It Li KERN_BOOTFILE
�����ͥ뤬�����ɤ��줿���Υե�����δ����ʥѥ�̾
.It Li KERN_BOOTTIME
.Va struct timeval
��¤���֤���ޤ������ι�¤�ˤϡ������ƥब��ư���줿���郎
������ޤ���
.It Li KERN_CLOCKRATE
.Va struct clockinfo
��¤���֤���ޤ������ι�¤�ˤϡ������å������ץ����å���
����ӥץ��ե����벽�����å����١��ޥ�������
/hz
���å�������Ӥͤ���졼��
��������ޤ���
.It Li KERN_FILE
�ե�����ơ��֥����Τ��֤��ޤ����֤��줿�ǡ����ϡ�
1 �Ĥ�
.Va struct filehead
��
.Va struct file
������³������Τˤʤ�ޤ����ե�����Υ������ϡ�
�����ƥ���Τ��Τ褦�ʥ��֥������Ȥθ��ߤο��Ƿ�ޤ�ޤ���
.It Li KERN_HOSTID
�ۥ���
ID
������ޤ������ꤷ�ޤ���
.It Li KERN_HOSTNAME
�ۥ���̾������ޤ������ꤷ�ޤ���
.It Li KERN_JOB_CONTROL
���Υ����ƥ�Ǿ������椬���ѤǤ������
1 ���֤��ޤ��������Ǥʤ�����
0 ���֤��ޤ���
.It Li KERN_MAXFILES
�����ƥ�dz�����ե�����κ����
.It Li KERN_MAXFILESPERPROC
1 �ĤΥץ������ˤĤ��Ƴ�����ե�����κ�������������¤�Ŭ�Ѥ����Τϡ�
�����Ȥ����׵᤬���ä������ǡ������Ǥʤ�ͭ����
uid
�Τ���ץ����������Ǥ���
���¤ޤ���ͭ����
uid
���ѹ�����Ƥ⡢���˳�����Ƥ���ե�����ϱƶ�������ޤ���
.It Li KERN_MAXPROC
�����ƥ���ǵ������Ʊ���ץ������κ����
.It Li KERN_MAXPROCPERUID
1 �Ĥ�ͭ����
uid
�ˤĤ��ƥ����ƥब���Ƥ���Ʊ���ץ������κ���������θ³���
Ŭ�Ѥ����Τϡ��ե������׵�λ����ǡ������Ǥʤ�ͭ����
uid
�Τ���ץ�����
�����Ǥ����³����ѹ�����Ƥ⡢���˳��Ϥ���Ƥ���ץ������ϱƶ���
�����ޤ���
.It Li KERN_MAXVNODES
�����ƥ�����ѤǤ���
vnode
����
.It Li KERN_NGROUPS
�佼���롼�פκ����
.It Li KERN_NISDOMAINNAME
���ߤ�
YP/NIS
�ɥᥤ���̾��
.It Li KERN_OSRELDATE
�����ƥ�Υ�꡼�����ա�������
YYYYMM (1996
ǯ
1 ���
199601 ��
�����ɲ�����ޤ�
)��
.It Li KERN_OSRELEASE
�����ƥ��꡼�����ȥ��
.It Li KERN_OSREV
�����ƥ�������ȥ��
.It Li KERN_OSTYPE
�����ƥॿ���ץ��ȥ��
.It Li KERN_POSIX1
�����ƥब��򤷤褦�Ȥ��Ƥ���
.St -p1003.1
�ΥС������
.It Li KERN_PROC
�ץ������ơ��֥����Τޤ��Ϥ��Υ��֥��åȤ��֤��ޤ���
.Va struct kinfo_proc
��¤�������֤��졢����Υ������ϥ����ƥ���Τ��Τ褦�ʥ��֥������Ȥ�
���ߤο��Ƿ�ޤ�ޤ�����
3 ��٥����
4 ��٥�ϼ��ΤȤ���Ǥ���
.Bl -column "Third level nameXXXXXX" "Fourth level is:XXXXXX" -offset indent
.It "�� 3 ��٥�̾	�� 4 ��٥�̾"
.It "KERN\_PROC\_ALL	�ʤ�"
.It "KERN\_PROC\_PID	�ץ����� ID"
.It "KERN\_PROC\_PGRP	�ץ��������롼��"
.It "KERN\_PROC\_TTY	tty �ǥХ���"
.It "KERN\_PROC\_UID	�桼�� ID"
.It "KERN\_PROC\_RUID	�ꥢ��桼�� ID"
.El
.It Li KERN_PROF
�����ͥ�˴ؤ���ץ��ե����벽������֤��ޤ��������ͥ��ץ��ե����벽�Ѥ�
����ѥ��뤷�ʤ��ȡ�
KERN_PROF
�ͤ���Ф����Ȥ��Ƥ⡢
.Er ENOENT
�ǽ����ϼ��Ԥ��ޤ������ȥ���Ѥ���
3 ��٥�̾����������ץ��ե����벽����ˤĤ���
�ʲ��˾ܤ����������ޤ���
(
�ѹ���ǽ������ϡ����������ø��Τ���ץ��������ͤ�
�ѹ��Ǥ��뤫�ɤ����򼨤��ޤ���
.Bl -column "GPROFXGMONPARAMXXX" "struct gmonparamXXX" -offset indent
.It Sy "�� 3 ��٥�̾	������	�ѹ���ǽ"
.It "GPROF\_STATE	����	�Ϥ�"
.It "GPROF\_COUNT	u_short[\|]	�Ϥ�"
.It "GPROF\_FROMS	u_short[\|]	�Ϥ�"
.It "GPROF\_TOS	struct tostruct	�Ϥ�"
.It "GPROF\_GMONPARAM	struct gmonparam	������"
.El
.Pp
�ѿ��ϼ��ΤȤ���Ǥ���
.Bl -tag -width 6n
.It Li GPROF_STATE
GMON_PROF_ON
�ޤ���
GMON_PROF_OFF
���֤��ơ��ץ��ե����벽��
�ʹ���Ǥ��뤫���ޤ�����ߤ��Ƥ��뤫�򼨤��ޤ���
.It Li GPROF_COUNT
���ץץ�����५���󥿥�����Ȥ�����
.It Li GPROF_FROMS
�ƤӽФ����Υץ�����५����Ȥǥ���ǥå����������줿����
.It Li GPROF_TOS
�ƤӽФ��ΰ���Ȥ��Υ�����Ȥ򵭽Ҥ���
.Va struct tostruct
������
.It Li GPROF_GMONPARAM
�嵭������Υ���������ꤹ�빽¤
.El
.It Li KERN_QUANTUM
¾�ץ��������¹��Ԥ�����ˤ�����ˤ�����
����ץ����������夲��줺�˼¹Ԥ�³�����������֤�
�ߥ���ñ�̤Ǽ����ޤ���
.It Li KERN_SAVED_IDS
��¸���줿
set-group
�������¸���줿
set-user ID
�����ѤǤ������
1 ��
�֤��ޤ���
.It Li KERN_SECURELVL
�����ƥ�Υ������ƥ���٥롣���Υ�٥�ϡ����������ø��Τ���ץ�����
�ˤ�äƾ夲�뤳�Ȥ��Ǥ��ޤ��������뤳�ȤϤǤ��ޤ���
.It Li KERN_VERSION
�����ƥ�С�����󥹥ȥ��
.It Li KERN_VNODE
vnode
�ơ��֥����Τ��֤��ޤ���
vnode
�ơ��֥��ɬ�����⥷���ƥ�ΰ�Ӥ���
���ʥåץ���åȤǤϤʤ����Ȥ����դ��Ƥ����������֤����ǡ����������
�������졢����Υ������ϡ������ƥ���Τ��Τ褦�ʥ��֥������Ȥθ��ߤο���
��ޤ�ޤ�������γ����Ǥ˴ޤޤ��Τϡ�
vnode
�Υ����ͥ륢�ɥ쥹
.Va struct vnode *
��
vnode
����
.Va struct vnode
��³������ΤǤ���
.El
.Ss CTL_MACHDEP
������줿�ѿ��ν���ϥ������ƥ�����˰�¸���ޤ��������ѿ���
i386
�������ƥ������Ѥ��������Ƥ��ޤ���
.Bl -column "CONSOLE_DEVICEXXX" "struct bootinfoXXX" -offset indent
.It Sy "�� 2 ��٥�̾	������	�ѹ���ǽ"
.It Li "CPU\_CONSDEV	dev_t	������"
.It Li "CPU\_ADJKERNTZ	����	�Ϥ�"
.It Li "CPU\_DISRTCSET	����	�Ϥ�"
.It Li "CPU\_BOOTINFO	struct bootinfo	������"
.It Li "CPU\_WALLCLOCK	����	�Ϥ�"
.El
.Ss CTL_NET
CTL_NET
��٥�����ѤǤ��륹�ȥ�󥰤������ˤĤ��Ƥϰʲ��˾ܤ���
�������ޤ����ѹ���ǽ������ϡ����������ø��Τ���ץ��������ͤ�
�ѹ��Ǥ��뤫�ɤ����򼨤��ޤ���
.Bl -column "Second level nameXXXXXX" "routing messagesXXX" -offset indent
.It Sy "�� 2 ��٥�̾	������	�ѹ���ǽ"
.It "PF\_ROUTE	�롼�ƥ��󥰥�å�����	������"
.It "PF\_INET	IPv4 ��	�Ϥ�"
.It "PF\_INET6	IPv6 ��	�Ϥ�"
.El
.Pp
.Bl -tag -width 6n
.It Li PF_ROUTE
�롼�ƥ��󥰥ơ��֥����Τޤ��Ϥ��Υ��֥��åȤ��֤��ޤ����ǡ����ϡ�
�롼�ƥ��󥰥�å������Υ������󥹤Ȥ����֤���ޤ�
(
�إå��ե����롢������
����Ӱ�̣�ˤĤ��Ƥ�
.Xr route 4
�򻲾�
)���ƥ�å�������Ĺ���ϥ�å������إå�
���Ȥ߹��ޤ�Ƥ��ޤ���
.Pp
��
3 ��٥�̾�ϥץ��ȥ����ֹ�ǡ��������Ǥ�ɬ��
0 �Ǥ�����
4 ��٥�̾��
���ɥ쥹�ե��ߥ�ǡ������
0 �����ꤹ��Ȥ��٤ƤΥ��ɥ쥹�ե��ߥ��
����Ǥ��ޤ�����
5 ��٥�̾����
6 ��٥�̾�ϼ��ΤȤ���Ǥ���
.Bl -column "Fifth level nameXXXXXX" "Sixth level is:XXX" -offset indent
.It Sy "�� 5 ��٥�̾	�� 6 ��٥�"
.It "NET_RT_FLAGS	rtflags"
.It "NET_RT_DUMP	�ʤ�"
.It "NET_RT_IFLIST	�ʤ�"
.El
.It Li PF_INET
IPv4 (���󥿡��ͥåȥץ��ȥ���С������ 4)
�˴ؤ���Ƽ�Υ������Х�ʾ��������ޤ���
���ꤷ�ޤ�����
3 ��٥�̾�ϥץ��ȥ���Ǥ�����
4 ��٥�̾���ѿ�̾�Ǥ���
���������������Ƥ���ץ��ȥ����̾���ϼ��ΤȤ���Ǥ���
.Bl -column ProtocolXX VariableXX TypeXX ChangeableXX
.It Sy "�ץ��ȥ���	�ѿ�	������	�ѹ���ǽ"
.It "icmp	bmcastecho	����	�Ϥ�"
.It "icmp	maskrepl	����	�Ϥ�"
.It "ip	forwarding	����	�Ϥ�"
.It "ip	redirect	����	�Ϥ�"
.It "ip	ttl	����	�Ϥ�"
.It "udp	checksum	����	�Ϥ�"
.El
.Pp
�ѿ��ϼ��ΤȤ���Ǥ���
.Bl -tag -width 6n
.It Li icmp.bmcastecho
�֥����ɥ��㥹�Ȥޤ��ϥޥ�����㥹�ȤΥ��ɥ쥹�ؤ�
ICMP
�������׵᤬
���������ɬ�פ��������
1 ���֤��ޤ���
.It Li icmp.maskrepl
ICMP
�ͥåȥ���ޥ����׵᤬���������ɬ�פ��������
1 ���֤��ޤ���
.It Li ip.forwarding
IP
ž�����ۥ��ȤˤĤ���ͭ���ʤȤ���
1 ���֤��ޤ����Ĥޤꡢ�ۥ��Ȥ��롼��
�Ȥ��Ƶ�ǽ���Ƥ���Ȥ��Ǥ���
.It Li ip.redirect
ICMP
��ž�����ۥ��Ȥˤ�ä������Ǥ���Ȥ���
1 ���֤��ޤ������Υ��ץ����
�ϡ��ۥ��Ȥ�
IP
�ѥ��åȤ�롼�ƥ��󥰤��Ƥ��ʤ�����̵�뤵��ޤ����ޤ���
���Υ��ץ������̾���٤ƤΥ����ƥ��ͭ���ˤ��Ƥ���ɬ�פ�����ޤ���
.It Li ip.ttl
�����ƥब�������ˤʤäƤ���
IP
�ѥ��åȤκ����̿
(
�ۥå׿�
)
�͡������ͤ�
�̾�Υȥ�󥹥ݡ��ȥץ��ȥ����Ŭ�Ѥ���ޤ���
ICMP
�ˤǤϤ���ޤ���
.It Li udp.checksum
UDP
�����å����ब�׻�����ӥ����å�����Ƥ���Ȥ���
1 ���֤��ޤ���
UDP
�����å������̵���ˤ��뤳�Ȥϡ�������侩�Ǥ���
.Pp
�ѿ� net.inet.*.ipsec �ˤĤ��Ƥ�
.Xr ipsec 4
�򻲾Ȥ��Ƥ���������
.El
.It Li PF_INET6
IPv6 (���󥿡��ͥåȥץ��ȥ���С������ 6)
�˴ؤ���Ƽ�Υ������Х�ʾ��������ޤ���
���ꤷ�ޤ���
�� 3 ��٥�̾�ϥץ��ȥ���Ǥ���
�� 4 ��٥�̾���ѿ�̾�Ǥ���
.Pp
�ѿ� net.inet6.* �ˤĤ��Ƥ�
.Xr inet6 4
�򻲾Ȥ��Ƥ���������
�ѿ� net.inet6.*.ipsec6 �ˤĤ��Ƥ�
.Xr ipsec 4
�򻲾Ȥ��Ƥ���������
.El
.Ss CTL_USER
CTL_USER
��٥�����ѤǤ��륹�ȥ�󥰤������ˤĤ��ưʲ��˾ܤ����������ޤ���
�ѹ���ǽ������ϡ����������ø��Τ���ץ��������ͤ��ѹ��Ǥ��뤫�ɤ�����
�����ޤ���
.Bl -column "USER_COLL_WEIGHTS_MAXXXX" "integerXXX" -offset indent
.It Sy "�� 2 ��٥�̾	������	�ѹ���ǽ"
.It "USER\_BC\_BASE\_MAX	����	������"
.It "USER\_BC\_DIM\_MAX	����	������"
.It "USER\_BC\_SCALE\_MAX	����	������"
.It "USER\_BC\_STRING\_MAX	����	������"
.It "USER\_COLL\_WEIGHTS\_MAX	����	������"
.It "USER\_CS\_PATH	���ȥ��	������"
.It "USER\_EXPR\_NEST\_MAX	����	������"
.It "USER\_LINE\_MAX	����	������"
.It "USER\_POSIX2\_CHAR\_TERM	����	������"
.It "USER\_POSIX2\_C\_BIND	����	������"
.It "USER\_POSIX2\_C\_DEV	����	������"
.It "USER\_POSIX2\_FORT\_DEV	����	������"
.It "USER\_POSIX2\_FORT\_RUN	����	������"
.It "USER\_POSIX2\_LOCALEDEF	����	������"
.It "USER\_POSIX2\_SW\_DEV	����	������"
.It "USER\_POSIX2\_UPE	����	������"
.It "USER\_POSIX2\_VERSION	����	������"
.It "USER\_RE\_DUP\_MAX	����	������"
.It "USER\_STREAM\_MAX	����	������"
.It "USER\_TZNAME\_MAX	����	������"
.El
.Bl -tag -width 6
.Pp
.It Li USER_BC_BASE_MAX
.Xr bc 1
�桼�ƥ���ƥ���κ���
ibase/obase
��
.It Li USER_BC_DIM_MAX
.Xr bc 1
�桼�ƥ���ƥ���κ������󥵥���
.It Li USER_BC_SCALE_MAX
.Xr bc 1
�桼�ƥ���ƥ���κ��祹��������
.It Li USER_BC_STRING_MAX
.Xr bc 1
�桼�ƥ���ƥ���κ��祹�ȥ��Ĺ
.It Li USER_COLL_WEIGHTS_MAX
������������ե��������
LC_COLLATE
���������ɤΥ���ȥ�˳��
���ƤǤ���Ťߤκ����
.It Li USER_CS_PATH
���٤Ƥ�ɸ��桼�ƥ���ƥ��򸡽Ф���Ķ��ѿ�
.Ev PATH
���ͤ��֤��ޤ���
.It Li USER_EXPR_NEST_MAX
.Xr expr 1
�桼�ƥ���ƥ��ˤ�äơ��ݳ����˥ͥ��ȤǤ��뼰�κ����
.It Li USER_LINE_MAX
�ƥ����Ƚ����桼�ƥ���ƥ����ϹԤκ���Ĺ
(
�Х���ñ��
)
.It Li USER_POSIX2_CHAR_TERM
.St -p1003.2
�˵��Ҥ��줿���٤Ƥ����Ǥ��뾯�ʤ��Ȥ�
1 �Ĥ�ü�������פ�
�����ƥब���ݡ��Ȥ������
1 ���֤��ޤ��������Ǥʤ�����
0 ���֤��ޤ���
.It Li USER_POSIX2_C_BIND
�����ƥ��
C
���쳫ȯ��ǽ����
C
����Х���ǥ��󥰥��ץ����򥵥ݡ��Ȥ���
����
1 ���֤��ޤ��������Ǥʤ�����
0 ���֤��ޤ���
.It Li USER_POSIX2_C_DEV
�����ƥब
C
���쳫ȯ�桼�ƥ���ƥ����ץ����򥵥ݡ��Ȥ������
1 ��
�֤��ޤ��������Ǥʤ�����
0 ���֤��ޤ���
.It Li USER_POSIX2_FORT_DEV
�����ƥब
FORTRAN
��ȯ�桼�ƥ���ƥ����ץ����򥵥ݡ��Ȥ������
1 ��
�֤��ޤ��������Ǥʤ�����
0 ���֤��ޤ���
.It Li USER_POSIX2_FORT_RUN
�����ƥब
FORTRAN
��󥿥���桼�ƥ���ƥ����ץ����򥵥ݡ��Ȥ������
1 ���֤��ޤ��������Ǥʤ�����
0 ���֤��ޤ���
.It Li USER_POSIX2_LOCALEDEF
�����ƥब��������κ����򥵥ݡ��Ȥ������
1 ���֤��ޤ��������Ǥʤ�����
0 ���֤��ޤ���
.It Li USER_POSIX2_SW_DEV
�����ƥब���եȥ�������ȯ�桼�ƥ���ƥ����ץ����򥵥ݡ��Ȥ������
1 ��
�֤��ޤ��������Ǥʤ�����
0 ���֤��ޤ���
.It Li USER_POSIX2_UPE
�����ƥब�桼���ݡ����ӥ�ƥ����桼�ƥ���ƥ����ץ����򥵥ݡ��Ȥ���
����
1 ���֤��ޤ��������Ǥʤ�����
0 ���֤��ޤ���
.It Li USER_POSIX2_VERSION
�����ƥब��򤷤褦�Ȥ��Ƥ���
.St -p1003.2
�ΥС������
.It Li USER_RE_DUP_MAX
�ֳ�ɽ������Ѥ��Ƥ���Ȥ��ˡ����Ƥ��������ɽ����ȿ��ȯ���κ����
.It Li USER_STREAM_MAX
�ץ�������Ʊ���˳����Ƥ����륹�ȥ꡼��κ�����κǾ�
.It Li USER_TZNAME_MAX
�����Ӥ�̾���ˤĤ��ƥ��ݡ��Ȥ���륿���פκ�����κǾ�
.El
.Ss CTL_VM
CTL_VM
��٥�����ѤǤ��륹�ȥ�󥰤������ˤĤ��ưʲ��Ǿܤ����������ޤ���
�ѹ���ǽ������ϡ����������ø��Τ���ץ��������ͤ��ѹ��Ǥ��뤫�ɤ�����
�����ޤ���
.Bl -column "Second level nameXXXXXX" "struct loadavgXXX" -offset indent
.It Sy "�� 2 ��٥�̾	������	�ѹ���ǽ"
.It "VM\_LOADAVG	struct loadavg	������"
.It "VM\_METER	struct vmtotal	������"
.It "VM\_PAGEOUT\_ALGORITHM	����	�Ϥ�"
.It "VM\_SWAPPING\_ENABLED	����	�����餯"
.It "VM\_V\_CACHE\_MAX	����	�Ϥ�"
.It "VM\_V\_CACHE\_MIN	����	�Ϥ�"
.It "VM\_V\_FREE\_MIN	����	�Ϥ�"
.It "VM\_V\_FREE\_RESERVED	����	�Ϥ�"
.It "VM\_V\_FREE\_TARGET	����	�Ϥ�"
.It "VM\_V\_INACTIVE\_TARGET	����	�Ϥ�"
.It "VM\_V\_PAGEOUT\_FREE\_MIN	����	�Ϥ�"
.El
.Pp
.Bl -tag -width 6n
.It Li VM_LOADAVG
���ʿ��������֤��ޤ����֤��줿�ǡ�����
.Va struct loadavg
�ǹ�������ޤ���
.It Li VM_METER
�����ƥ����Τ��Ϥ벾�ۥ������פ��֤��ޤ����֤��줿�ǡ�����
.Va struct vmtotal
�ǹ�������ޤ���
.It Li VM_PAGEOUT_ALGORITHM
���ץ١����δ������르�ꥺ�ब���Ѥ�������
0 �Ǥ���
�� LRU
( near-LRU )
���르�ꥺ�ब���Ѥ�������
1 �Ǥ���
.It Li VM_SWAPPING_ENABLED
�ץ���������åפ�ͭ���ʾ���
1 �Ǥ���̵���ʾ���
0 �Ǥ�������åפ�
̵���ˤ��ƥ����ͥ뤬���ۤ��줿��硢�����ѿ��ϱ�³Ū��
0 �����ꤵ��ޤ���
.It Li VM_V_CACHE_MAX
����å����Ԥ�����κ����˾������
.It Li VM_V_CACHE_MIN
����å����Ԥ�����κǾ���˾������������å����Ԥ�����Υ�����������
�ͤ��Ϥ뤫���㤤�ȡ��ڡ��������ȥǡ���󤬵�ư����ޤ���
.It Li VM_V_FREE_MIN
������ԤäƤ���ץ���������ư�������ˡ����ѤǤ���褦�ˤʤ�ɬ�פΤ���
����κǾ���
(
����å������ܶ�������
)��
.It Li VM_V_FREE_RESERVED
�����ڡ����ȥ���å���ڡ����������ͤ���㤤�ȡ��ץ�������
�ڡ��������ȥǡ�����ư����������Ե����ޤ���
.It Li VM_V_FREE_TARGET
�ڡ��������ȥǡ���󤬰ݻ����褦�Ȥ����������ι����
(
����������
�ޤ�
)��
.It Li VM_V_INACTIVE_TARGET
�ڡ��������ȥǡ���󤬡��¹Ԥ����Ȥ��ˡ���ã����ɬ�פΤ��륢���ƥ���
�Ǥʤ��ڡ����δ�˾���������ƥ��֤Ǥʤ��ڡ����ϡ�ɬ�פʤȤ��ˡ�
�ץ��������ɥ쥹������᤯�����Ǥ��ޤ���
.It Li VM_V_PAGEOUT_FREE_MIN
��������ȥ���å��������̤������ͤ���㤤��硢�ڡ��������ȥǡ����
�ϥǥåɥ��å����򤱤뤿��� "����ݻ��⡼��" ������ޤ���
.El
.Sh �����
.Rv -std
.Sh ���顼
���Υ��顼����𤵤���ǽ��������ޤ���
.Bl -tag -width Er
.It Bq Er EFAULT
�Хåե�
.Fa name��
.Fa oldp��
.Fa newp���ޤ���Ĺ���ݥ���
.Fa oldlenp
��̵����
���ɥ쥹���ޤޤ�Ƥ��ޤ���
.It Bq Er EINVAL
.Fa name
����
2 ̤���Ǥ��뤫���ޤ���
CTL_MAXNAME
����礭���ʤäƤ��ޤ���
.It Bq Er EINVAL
NULL
�Ǥʤ�
.Fa newp
�����ꤵ�졢
.Fa newlen
��λ����Ĺ����
�礭�����뤫�ޤ��Ͼ��������ޤ���
.It Bq Er ENOMEM
.Fa oldlenpis
���ؤ�Ĺ����û�����ơ��׵ᤵ�줿�ͤ��ݻ��Ǥ��ޤ���
.It Bq Er ENOTDIR
.Fa name
���󤬡�ü��̾���ǤϤʤ�����֤�̾������ꤷ�Ƥ��ޤ���
.It Bq Er EISDIR
.Fa name
����ü��̾������ꤷ�Ƥ��ޤ������ºݤ�̾����ü�ǤϤ���ޤ���
.It Bq Er ENOENT
.Fa name
����̤�Τ��ͤ���ꤷ�Ƥ��ޤ���
.It Bq Er EPERM
�ɤ߼�������ͤ����ꤷ�褦�Ȥ��ޤ�����
.It Bq Er EPERM
���������ø��Τʤ��ץ��������ͤ����ꤷ�褦�Ȥ��ޤ�����
.El
.Sh �ե�����
.Bl -tag -width <netinet/icmpXvar.h> -compact
.It Aq Pa sys/sysctl.h
1 �־�Υ�٥�μ��̻Ҥ������
2 �֤�Υ�٥�Υ����ͥ뤪���
�ϡ��ɥ��������̻ҡ�����ӥ桼����٥뼱�̻�
.It Aq Pa sys/socket.h
��
2 ��٥�Υͥåȥ�����̻Ҥ����
.It Aq Pa sys/gmon.h
��
3 ��٥�Υץ��ե����벽���̻ҤˤĤ��Ƥ����
.It Aq Pa vm/vm_param.h
��
2 ��٥�β��ۥ��꼱�̻ҤˤĤ��Ƥ����
.It Aq Pa netinet/in.h
�� 3 ��٥�� IPv4/IPv6 ���̻Ҥȡ�
�� 4 ��٥�� IPv4/IPv6 ���̻ҤˤĤ��Ƥ����
.It Aq Pa netinet/icmp_var.h
��
4 ��٥��
ICMP
���̻ҤˤĤ��Ƥ����
.It Aq Pa netinet/icmp6.h
4 ��٥��
ICMPv6
���̻ҤˤĤ��Ƥ����
.It Aq Pa netinet/udp_var.h
��
4 ��٥��
UDP
���̻ҤˤĤ��Ƥ����
.El
.Sh ��Ϣ����
.Xr sysconf 3 ,
.Xr sysctl 8
.Sh ���
.Fn sysctl
�ؿ���
.Bx 4.4
�Ǻǽ�˼��������ޤ�����