No empty .Rs/.Re
[netbsd-mini2440.git] / share / doc / psd / 05.sysman / 1.7.t
blobb4f708660d690d5666a4732e81195b0cc555f23d
1 .\"     $NetBSD: 1.7.t,v 1.2 1998/01/09 06:54:46 perry Exp $
2 .\"
3 .\" Copyright (c) 1983, 1993, 1994
4 .\"     The Regents of the University of California.  All rights reserved.
5 .\"
6 .\" Redistribution and use in source and binary forms, with or without
7 .\" modification, are permitted provided that the following conditions
8 .\" are met:
9 .\" 1. Redistributions of source code must retain the above copyright
10 .\"    notice, this list of conditions and the following disclaimer.
11 .\" 2. Redistributions in binary form must reproduce the above copyright
12 .\"    notice, this list of conditions and the following disclaimer in the
13 .\"    documentation and/or other materials provided with the distribution.
14 .\" 3. Neither the name of the University nor the names of its contributors
15 .\"    may be used to endorse or promote products derived from this software
16 .\"    without specific prior written permission.
17 .\"
18 .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
19 .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
20 .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
21 .\" ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
22 .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
23 .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
24 .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
25 .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
26 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
27 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
28 .\" SUCH DAMAGE.
29 .\"
30 .\"     @(#)1.7.t       8.4 (Berkeley) 5/26/94
31 .\"
32 .Sh 2 "System operation support
33 .LP
34 Unless noted otherwise,
35 the calls in this section are permitted only to a privileged user.
36 .Sh 3 "Monitoring system operation
37 .PP
38 The
39 .Fn sysctl
40 function allows any process to retrieve system information
41 and allows processes with appropriate privileges to set system configurations.
42 .DS
43 .Fd sysctl 6 "get or set system information
44 sysctl(name, namelen, oldp, oldlenp, newp, newlen);
45 int *name; u_int namelen; result void *oldp; result size_t *oldlenp;
46 void *newp; size_t newlen;
47 .DE
48 The information available from
49 .Fn sysctl
50 consists of integers, strings, and tables.
51 .Fn Sysctl
52 returns a consistent snapshot of the data requested.
53 Consistency is obtained by locking the destination
54 buffer into memory so that the data may be copied out without blocking.
55 Calls to
56 .Fn sysctl
57 are serialized to avoid deadlock.
58 .PP
59 The object to be interrogated or set is named
60 using a ``Management Information Base'' (MIB)
61 style name, listed in \fIname\fP,
62 which is a \fInamelen\fP length array of integers.
63 This name is from a hierarchical name space,
64 with the most significant component in the first element of the array.
65 It is analogous to a file pathname, but with integers as components
66 rather than slash-separated strings.
67 .PP
68 The information is copied into the buffer specified by \fIoldp\fP.
69 The size of the buffer is given by the location specified by \fIoldlenp\fP
70 before the call,
71 and that location is filled in with the amount of data copied after
72 a successful call.
73 If the amount of data available is greater
74 than the size of the buffer supplied,
75 the call supplies as much data as fits in the buffer provided
76 and returns an error.
77 .PP
78 To set a new value, \fInewp\fP
79 is set to point to a buffer of length \fInewlen\fP
80 from which the requested value is to be taken.
81 If a new value is not to be set, \fInewp\fP
82 should be set to NULL and \fInewlen\fP set to 0.
83 .PP
84 The top level names (those used in the first element of the \fIname\fP array)
85 are defined with a CTL_ prefix in \fI<sys/sysctl.h>\fP,
86 and are as follows.
87 The next and subsequent levels down are found
88 in the include files listed here:
89 .DS
90 .TS
91 l l l.
92 Name    Next Level Names        Description
94 CTL\_DEBUG      sys/sysctl.h    Debugging
95 CTL\_FS sys/sysctl.h    Filesystem
96 CTL\_HW sys/sysctl.h    Generic CPU, I/O
97 CTL\_KERN       sys/sysctl.h    High kernel limits
98 CTL\_MACHDEP    sys/sysctl.h    Machine dependent
99 CTL\_NET        sys/socket.h    Networking
100 CTL\_USER       sys/sysctl.h    User-level
101 CTL\_VM vm/vm_param.h   Virtual memory
104 .Sh 3 "Bootstrap operations
106 The call:
108 .Fd mount 4 "mount a filesystem
109 mount(type, dir, flags, data);
110 int type; char *dir; int flags; caddr_t data;
112 extends the name space. The
113 .Fn mount
114 call grafts a filesystem object onto the system file tree
115 at the point specified in \fIdir\fP.
116 The argument \fItype\fP specifies the type of filesystem to be mounted.
117 The argument \fIdata\fP describes the filesystem object to be mounted
118 according to the \fItype\fP.
119 The contents of the filesystem become available through the
120 new mount point \fIdir\fP.
121 Any files in or below \fIdir\fP at the time of a successful mount
122 disappear from the name space until the filesystem is unmounted.
123 The \fIflags\fP value specifies generic properties,
124 such as a request to mount the filesystem read-only.
126 Information about all mounted filesystems can be obtained with the call:
128 .Fd getfsstat 3 "get list of all mounted filesystems
129 getfsstat(buf, bufsize, flags);
130 result struct statfs *buf; long bufsize, int flags;
133 The call:
135 .Fd swapon 1 "add a swap device for interleaved paging/swapping
136 swapon(blkdev);
137 char *blkdev;
139 specifies a device to be made available for paging and swapping.
140 .Sh 3 "Shutdown operations
142 The call:
144 .Fd unmount 2 "dismount a filesystem
145 unmount(dir, flags);
146 char *dir; int flags;
148 unmounts the filesystem mounted on \fIdir\fP.
149 This call will succeed only if the filesystem is
150 not currently being used or if the MNT_FORCE flag is specified.
152 The call:
154 .Fd sync 0 "force completion of pending disk writes (flush cache)
155 sync();
157 schedules I/O to flush all modified disk blocks resident in the kernel.
158 (This call does not require privileged status.)
159 Files can be selectively flushed to disk using the
160 .Fn fsync
161 call (see section
162 .Xr 2.2.6 ).
164 The call:
166 .Fd reboot 1 "reboot system or halt processor
167 reboot(how);
168 int how;
170 causes a machine halt or reboot.  The call may request a reboot
171 by specifying \fIhow\fP as RB_AUTOBOOT, or that the machine be halted
172 with RB_HALT, among other options.
173 These constants are defined in \fI<sys/reboot.h>\fP.
174 .Sh 3 "Accounting
176 The system optionally keeps an accounting record in a file
177 for each process that exits on the system.
178 The format of this record is beyond the scope of this document.
179 The accounting may be enabled to a file \fIname\fP by doing:
181 .Fd acct 1 "enable or disable process accounting
182 acct(path);
183 char *path;
185 If \fIpath\fP is NULL, then accounting is disabled.
186 Otherwise, the named file becomes the accounting file.