ACCT(5) — UNIX Programmer’s Manual
名称
acct − 実行アカウントファイル
形式
#include<sys/acct.h>
解説
acct(2) システムコールは、プロセスが終了する度にアカウントファイル内に 入力されることになる項目を編集します。アカウントファイルは、 インクルードファイルによって定義される以下のレイアウトを備えた 一連のエントリです。
/∗ @(#)acct.h 1.3 87/05/15 3.2/4.3NFSSRC ∗/
/∗
∗ Copyright (c)1982, 1986 Regents of the University of California.
∗ All rights reserved. The Berkeley software License Agreement
∗ specifies the terms and conditions for redistribution.
∗
∗ @(#)acct.h 7.1(Berkeley) 6/4/86
∗/
/∗
∗ アカウント構造体;
∗ これらは、3ビットを底とし、べき指数を 8 とする、13ビットの“浮動
∗ 小数点”数である comp_t タイプを使用する。単位は 1/AHZ 秒である。
∗/
typedef u_short comp_t;
struct acct
{
char ac_comm[10];/∗ アカウントコマンド名 ∗/
comp_t ac_utime;/∗ アカウントユーザ時間 ∗/
comp_t ac_stime;/∗ アカウントシステム時間 ∗/
comp_t ac_etime;/∗ アカウント経過時間 ∗/
time_t ac_btime;/∗ 開始時間 ∗/
uid_t ac_uid;/∗ アカウントユーザ ID ∗/
gid_t ac_gid;/∗ アカウントグループ ID ∗/
short ac_mem;/∗ 平均メモリ使用率 ∗/
comp_t ac_io;/∗ 制御端末 ∗/
dev_t ac_tty;/∗ コントロールする tty ∗/
char ac_flag;/∗ アカウントフラグ ∗/
};
#defineAFORK0001/∗ fork は実行しているが、exec は実行していない ∗/
#defineASU0002/∗ スーパーユーザ特権を使用した ∗/
#defineACOMPAT0004/∗ 互換性モードを使用した ∗/
#defineACORE0010/∗ コアをダンプした ∗/
#defineAXSIG0020/∗ シグナルによって kill されたもの ∗/
/∗
∗ 1/AHZ は、種々の comp_t フィールド中でエンコードされたデータの単位である。
∗ これは、必ずしも hz(ヘルツ)に等しくない。
∗/
#define AHZ 64
#ifdef KERNEL
struct acct acctbuf;
struct vnode ∗acctp;
#endif
プロセスが execve(2) によって作成された場合、ファイル名の最初の 10 キャラクタが ac_comm フィールドに現れます。アカウントフラグには、 execve(2) が行われたかどうかを示すビット、およびそのプロセスがスーパーユーザ特権を 持っていたかどうかを示すビットが含まれています。
関連事項
NEWS-OSRelease 3.3