acct(5) FreeBSD 一般コマンドマニュアル

acct

前のページ 上に戻る 次のページ

acct


     #include <sys/acct.h>


解説

     カーネルは、下記の acct 情報構造を、全プロセスに対して管理します。プロセ
     スが終了すると、アカウンティングが有効になっている場合には、カーネルは
     acct(2) 関数呼び出しを行い、アカウンティングファイルに記録を追加します。

     /*
      * アカウンティング構造体; これらは、基底値 8 の 3 ビット指数部および
      * 13 ビット小数部の ``浮動小数点数'' である comp_t 型を使用します。
      * 単位は 1/AHZ 秒です。
      */
     typedef u_short comp_t;

     #define AC_COMM_LEN 16
     struct acct {
             char    ac_comm[AC_COMM_LEN];  /* コマンド名 */
             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 */
     #define AFORK   0x01            /* fork したが exec されていない */
     #define ASU     0x02            /* スーパユーザ権限を使用した */
     #define ACOMPAT 0x04            /* 互換モードを使用した */
     #define ACORE   0x08            /* コアダンプした */
     #define AXSIG   0x10            /* シクナルにより kill された */
             char    ac_flag;        /* アカウンティングフラグ */
     };

     /*
      * 1/AHZ の粒度で、データは comp_t フィールドにエンコードされます。
      * 必ずしも周波数と同一となるとは限りません。
      */
     #define AHZ     64

     終了したプロセスが execve(2) により生成されたものだった場合、実行された
     ファイルのファイル名 (最大 10 文字まで) が ac_comm フィールドに保存され、
     その状態は ac_flag の次のフラグの 1 つ以上を設定することにより保存されま
     す: AFORK, ASU, ACOMPAT, ACORE, ASIG 。


関連項目

     acct(2), execve(2), sa(8)


歴史

     acct ファイルフォーマットは Version 7 AT&T UNIX から登場しました。

FreeBSD 4.4                      June 5, 1993                      FreeBSD 4.4

ABELNET VPSサービス