HPUX acct[4]



acct in anderen Kapiteln des hpux Handbuch: acct.1m acct.2




 acct(4)                                                             acct(4)





 NAME
      acct - per-process accounting file format

 SYNOPSIS
      #include <sys/acct.h>

 DESCRIPTION
      Files produced as a result of calling acct() (see acct(2)) have
      records in the form defined by <sys/acct.h>, whose contents are:

      typedef ushort comp_t; /* "floating point":
                                     13-bit fraction, 3-bit exponent */
      struct  acct {
          char    ac_flag;        /* Accounting flag */
          char    ac_stat;        /* Exit status */
          ushort  ac_uid;         /* Accounting user ID */
          ushort  ac_gid;         /* Accounting group ID */
          dev_t   ac_tty;         /* control typewriter */
          time_t  ac_btime;       /* Beginning time */
          comp_t  ac_utime;       /* acctng user time in clock ticks */
          comp_t  ac_stime;       /* acctng system time in clock ticks */
          comp_t  ac_etime;       /* acctng elapsed time in clock ticks */
          comp_t  ac_mem;         /* memory usage in clicks */
          comp_t  ac_io;          /* chars trnsfrd by read/write */
          comp_t  ac_rw;          /* number of block reads/writes */
          char    ac_comm[8];     /* command name */
      };
      #define AFORK   01          /* has executed fork, but no exec */
      #define ASU     02          /* used super-user privileges */
      #define ACCTF   0300        /* record type: 00 = acct */

      In ac_flag, the AFORK flag is turned on by each fork() and turned off
      by an exec() (see fork(2) and exec(2)).  The ac_comm field is
      inherited from the parent process and is reset by any exec().  Each
      time the system charges the process with a clock tick, it also adds to
      ac_mem the current process size, computed as follows:

           (data size) + (text size) + (number of in-core processes sharing
           text) +
           sum of ((shared memory segment size) / (number of in-core
           processes attached to segment))

      For systems with virtual memory, the text, data, and shared memory
      sizes refer to the resident portion of the memory segments.  The value
      of ac_mem/(ac_stime+ac_utime) can be viewed as an approximation to the
      mean process size, as modified by text-sharing.

      The tacct structure, which resides with the source files of the
      accounting commands, represents the total accounting format used by
      the various accounting commands:




 Hewlett-Packard Company            - 1 -     HP-UX Release 9.0: August 1992






 acct(4)                                                             acct(4)





           /*
           * total accounting (for acct period), also for day
           */
           struct tacct {
               uid_t           ta_uid;      /* userid */
               char            ta_name[8];  /* login name */
               float           ta_cpu[2];   /* cum. cpu time, p/np (mins) */
               float           ta_kcore[2]; /* cum kcore-minutes, p/np */
               float           ta_con[2];   /* cum. connect time, p/np, mins */
               float           ta_du;       /* cum. disk usage */
               long            ta_pc;       /* count of processes */
               unsigned short  ta_sc;       /* count of login sessions */
               unsigned short  ta_dc;       /* count of disk samples */
               short           ta_fee;      /* fee for special services */
           };

 SEE ALSO
      acct(2), acct(1M), acctcom(1M), exec(2), fork(2).

 WARNINGS
      The ac_mem value for a short-lived command gives little information
      about the actual size of the command because ac_mem can be incremented
      while a different command (such as the shell) is being executed by the
      process.

 STANDARDS CONFORMANCE
      acct: SVID2, XPG2



























 Hewlett-Packard Company            - 2 -     HP-UX Release 9.0: August 1992