BSD 4_4 release
[unix-history] / usr / src / share / man / man5 / acct.5
index 2c38760..7cb4c3d 100644 (file)
-.\"    @(#)acct.5      6.2 (Berkeley) 5/19/86
+.\" Copyright (c) 1991, 1993
+.\"    The Regents of the University of California.  All rights reserved.
 .\"
 .\"
-.TH ACCT 5 "May 19, 1986"
-.AT 3
-.SH NAME
-acct \- execution accounting file
-.SH SYNOPSIS
-.B #include <sys/acct.h>
-.SH DESCRIPTION
-The
-.IR acct (2)
-system call arranges for entries to be made in an accounting file
-for each process that terminates.
-The accounting file is a sequence of entries whose layout,
-as defined by the include file is:
-.PP
-.nf
-.ta \w'typedef 'u +\w'ACOMPAT  'u +\w'ac_comm[10];   'u
-.so /usr/include/sys/acct.h
-.fi
-.PP
-If the process was created by an
-.IR execve (2),
-the first 10 characters of the filename appear in
-.I ac_comm.
-The accounting flag contains bits indicating whether
-.IR execve (2)
-was ever accomplished, and whether the process ever had super-user privileges.
-.SH SEE ALSO
-acct(2), execve(2), sa(8)
+.\" 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.
+.\"
+.\"     @(#)acct.5     8.1 (Berkeley) 6/5/93
+.\"
+.Dd June 5, 1993
+.Dt ACCT 5
+.Os
+.Sh NAME
+.Nm acct
+.Nd execution accounting file
+.Sh SYNOPSIS
+.Fd #include <sys/acct.h>
+.Sh DESCRIPTION
+The kernel maintains the following
+.Fa acct
+information structure for all
+processes. If a process terminates, and accounting is enabled,
+the kernel calls the
+.Xr acct 2
+function call to prepare and append the record
+to the accounting file.
+.Bd -literal
+/*
+ * Accounting structures; these use a comp_t type which is a 3 bits base 8
+ * exponent, 13 bit fraction ``floating point'' number.  Units are 1/AHZ
+ * seconds.
+ */
+typedef u_short comp_t;
+
+struct acct {
+       char    ac_comm[10];    /* name of command */
+       comp_t  ac_utime;       /* user time */
+       comp_t  ac_stime;       /* system time */
+       comp_t  ac_etime;       /* elapsed time */
+       time_t  ac_btime;       /* starting time */
+       uid_t   ac_uid;         /* user id */
+       gid_t   ac_gid;         /* group id */
+       short   ac_mem;         /* memory usage average */
+       comp_t  ac_io;          /* count of IO blocks */
+       dev_t   ac_tty;         /* controlling tty */
+#define        AFORK   0x01            /* forked but not execed */
+#define        ASU     0x02            /* used super-user permissions */
+#define        ACOMPAT 0x04            /* used compatibility mode */
+#define        ACORE   0x08            /* dumped core */
+#define        AXSIG   0x10            /* killed by a signal */
+       char    ac_flag;        /* accounting flags */
+};
+
+/*
+ * 1/AHZ is the granularity of the data encoded in the comp_t fields.
+ * This is not necessarily equal to hz.
+ */
+#define        AHZ     64
+
+#ifdef KERNEL
+struct vnode   *acctp;
+#endif
+.Ed
+.Pp
+If a terminated process was created by an
+.Xr execve 2 ,
+the name of the executed file (at most ten characters of it)
+is saved in the field
+.Fa ac_comm
+and its status is saved by setting one of more of the following flags in
+.Fa ac_flag:
+.Dv AFORK ,
+.Dv ASU ,
+.Dv ACOMPAT ,
+.Dv ACORE
+and
+.Dv ASIG .
+.Sh SEE ALSO
+.Xr acct 2 ,
+.Xr execve 2 ,
+.Xr sa 8
+.Sh HISTORY
+A
+.Nm
+file format appeared in
+.At v7 .