acct(5) File Formats Manual acct(5) acct - #include (CONFIG_BSD_PROCESS_ACCT) acct(2) : acct("/var/log/pacct"); . : #define ACCT_COMM 16 typedef u_int16_t comp_t; struct acct { char ac_flag; /* */ u_int16_t ac_uid; /* */ u_int16_t ac_gid; /* */ u_int16_t ac_tty; /* */ u_int32_t ac_btime; /* ( UNIX Epoch) */ comp_t ac_utime; /* */ comp_t ac_stime; /* */ comp_t ac_etime; /* */ comp_t ac_mem; /* () */ comp_t ac_io; /* ( ) */ comp_t ac_rw; /* ( ) */ comp_t ac_minflt; /* */ comp_t ac_majflt; /* */ comp_t ac_swaps; /* ( ) */ u_int32_t ac_exitcode; /* ( wait(2)) */ char ac_comm[ACCT_COMM+1]; /* ( ) */ char ac_pad[X]; /* */ }; enum { /* ac_flag */ AFORK = 0x01, /* fork exec */ ASU = 0x02, /* */ ACORE = 0x08, /* Dumped core */ AXSIG = 0x10 /* */ }; comp_t 3 8 13 . c () : v = (c & 0x1fff) << (((c >> 13) & 0x7) * 3); ac_utime ac_stime ac_etime " " sysconf(_SC_CLK_TCK) . 3 2.6.8 CONFIG_BSD_PROCESS_ACCT_V3 . c_uid ac_gid 16 32 ( UID GID 2.4 ). : struct acct_v3 { char ac_flag; /* */ char ac_version; /* ACCT_VERSION (3) */ u_int16_t ac_tty; /* */ u_int32_t ac_exitcode; /* */ u_int32_t ac_uid; /* */ u_int32_t ac_gid; /* */ u_int32_t ac_pid; /* */ u_int32_t ac_ppid; /* */ u_int32_t ac_btime; /* */ float ac_etime; /* */ comp_t ac_utime; /* */ comp_t ac_stime; /* */ comp_t ac_mem; /* () */ comp_t ac_io; /* ( ) */ comp_t ac_rw; /* ( ) */ comp_t ac_minflt; /* */ comp_t ac_majflt; /* */ comp_t ac_swaps; /* ( ) */ char ac_comm[ACCT_COMM]; /* */ }; . . glibc 2.6. BSD. . 2.6.9 NPTL 2.6.10 . /proc/sys/kernel/acct proc(5) . lastcomm(1), acct(2), accton(8), sa(8) 3 . . : . 6.18 8 2026 acct(5)