--- sysctl.3.orig 2006-08-17 22:44:01.000000000 -0700 +++ sysctl.3 2006-08-17 22:45:34.000000000 -0700 @@ -182,13 +182,21 @@ } .Ed .Pp +Note: Implementation of +.Fn printkproc +-- to print whatever data deemed necessary from the large +.Vt kinfo_proc +structure ( +.In sysctl.h +) -- is left as an exercise for the reader. +.Pp The top level names are defined with a CTL_ prefix in .In sys/sysctl.h , and are as follows. The next and subsequent levels down are found in the include files listed here, and described in separate sections below. .Pp -.Bl -column CTLXMACHDEPXXX "Next level namesXXXXXX" -offset indent +.Bl -column CTLXMACHDEP "Next level names" -offset indent .It Sy "Name Next level names Description" .It "CTL_DEBUG sys/sysctl.h Debugging" .It "CTL_VFS sys/mount.h File system" @@ -197,7 +205,8 @@ .It "CTL_MACHDEP sys/sysctl.h Machine dependent" .It "CTL_NET sys/socket.h Networking" .It "CTL_USER sys/sysctl.h User-level" -.It "CTL_VM vm/vm_param.h Virtual memory" +.It "CTL_VM sys/resources.h Virtual memory (struct loadavg)" +.It "CTL_VM sys/vmmeter.h Virtual memory (struct vmtotal)" .El .Pp For example, the following retrieves the maximum number of processes allowed @@ -453,16 +462,6 @@ .It "KERN_PROC_UID A user ID" .It "KERN_PROC_RUID A real user ID" .El -.Pp -If the third level name is KERN_PROC_ARGS then the command line argument -array is returned in a flattened form, i.e., zero-terminated arguments -follow each other. -The total size of array is returned. -It is also possible for a process to set its own process title this way. -.Bl -column "Third level nameXXXXXX" "Fourth level is:XXXXXX" -offset indent -.It Sy "Third level name Fourth level is:" -.It "KERN_PROC_ARGS A process ID" -.El .It Li KERN_PROF Return profiling information about the kernel. If the kernel is not compiled for profiling, @@ -845,7 +844,7 @@ definitions for second level network identifiers .It In sys/gmon.h definitions for third level profiling identifiers -.It In vm/vm_param.h +.It In mach/vm_param.h definitions for second level virtual memory identifiers .It In netinet/in.h definitions for third level IPv4/IPv6 identifiers and