acct(5) File Formats Manual acct(5) NOM acct - Fichier de comptabilite des processus SYNOPSIS #include DESCRIPTION Si le noyau a ete compile avec l'option de comptabilite des processus activee (CONFIG_BSD_PROCESS_ACCT), l'appel systeme acct(2) demarre la comptabilite. Par exemple : acct("/var/log/pacct"); Quand la comptabilite des processus est activee, le noyau ecrit dans le fichier indique un enregistrement a chaque mort d'un processus. Cet enregistrement contient des informations concernant le processus termine, decrites dans ainsi : #define ACCT_COMM 16 typedef u_int16_t comp_t; struct acct { char ac_flag; /* Attribut de comptabilite */ u_int16_t ac_uid; /* UID comptabilise */ u_int16_t ac_gid; /* GID comptabilise */ u_int16_t ac_tty; /* Terminal de controle */ u_int32_t ac_btime; /* Heure de creation du processus */ (secondes depuis 01/01/1970) */ comp_t ac_utime; /* Temps CPU en mode utilisateur */ comp_t ac_stime; /* Temps CPU en mode noyau */ comp_t ac_etime; /* Temps ecoule */ comp_t ac_mem; /* Moyenne utilisation de la memoire (ko) */ comp_t ac_io; /* Caracteres transmis (inutilise) */ comp_t ac_rw; /* Blocs lus ou ecrits (inutilise) */ comp_t ac_minflt; /* Nb fautes de pages mineures */ comp_t ac_majflt; /* Nb fautes de pages majeures */ comp_t ac_swaps; /* Nb de swaps (inutilise) */ u_int32_t ac_exitcode; /* Code de retour - voir wait(2) */ char ac_comm[ACCT_COMM+1]; /* Nom de la commande (nom de base de la derniere commande executee termine par NULL) */ char ac_pad[X]; /* Remplissage */ }; enum { /* Bits qui peuvent se trouver dans ac_flag */ AFORK = 0x01, /* A execute fork mais pas exec */ ASU = 0x02, /* A utilise les privileges superutilisateur */ ACORE = 0x08, /* A cree un fichier core */ AXSIG = 0x10 /* Tue par un signal */ }; Le type de donnee comp_t est un nombre en virgule flottante constitue d'un exposant en base 8 sur 3 bits et d'une mantisse sur 13 bits. Une valeur, c, de ce type peut etre convertie en entier (long) ainsi : v = (c & 0x1fff) << (((c >> 13) & 0x7) * 3); Les champs ac_utime, ac_stime et ac_etime mesurent les temps en << tops d'horloge >>. Divisez ces valeurs par sysconf(_SC_CLK_TCK) pour obtenir des secondes. Format des fichiers de comptabilite version 3 Depuis Linux 2.6.8, une autre version du fichier peut etre eventuellement produite si l'option CONFIG_BSD_PROCESS_ACCT_V3 est definie lors de la compilation du noyau. Lorsque cette option est active, les enregistrements ecrits dans le fichier de comptabilite contiennent des champs supplementaires et la longueur des champs c_uid et ac_gid est elargie de 16 a 32 bits (en accord avec l'elargissement des UID et GID dans les noyaux Linux 2.4 et ulterieurs). Les enregistrements sont definis ainsi : struct acct_v3 { char ac_flag; /* Attribut de comptabilite */ char ac_version; /* Vaut toujours ACCT_VERSION (3) */ u_int16_t ac_tty; /* Terminal de controle */ u_int32_t ac_exitcode; /* Code de retour */ u_int32_t ac_uid; /* UID reel */ u_int32_t ac_gid; /* GID reel */ u_int32_t ac_pid; /* PID */ u_int32_t ac_ppid; /* PPID (PID du parent) */ u_int32_t ac_btime; /* Heure de creation du processus */ (secondes depuis 01/01/1970) */ float ac_etime; /* Temps ecoule */ comp_t ac_utime; /* Temps CPU en mode utilisateur */ comp_t ac_stime; /* Temps CPU en mode noyau */ comp_t ac_mem; /* Moyenne utilisation de la memoire (ko) */ comp_t ac_io; /* Caracteres transmis (inutilise) */ comp_t ac_rw; /* Blocs lus ou ecrits (inutilise) */ comp_t ac_minflt; /* Nb fautes de pages mineures */ comp_t ac_majflt; /* Nb fautes de pages majeures */ comp_t ac_swaps; /* Nb de swaps (inutilise) */ char ac_comm[ACCT_COMM]; /* Nom de la commande */ }; VERSIONS Bien qu'elle soit implementee sur la plupart des systemes, elle n'est pas normalisee et varie parfois entre les systemes. STANDARDS Aucun. HISTORIQUE glibc 2.6. La comptabilite des processus provient de BSD. NOTES Les enregistrements dans le fichier de comptabilite sont classes en fonction de l'heure de fin des processus. Dans Linux jusqu'a 2.6.9 (inclus), un enregistrement separe etait ecrit pour chaque thread utilisant la bibliotheque NPTL. Depuis Linux 2.6.10, un enregistrement unique est ecrit pour l'ensemble du processus a la fin de son dernier thread. Le fichier proc/sys/kernel/acct, decrit dans proc(5), definit les reglages qui configurent le comportement de la comptabilite des processus lorsque l'espace disque commence a manquer. VOIR AUSSI lastcomm(1), acct(2), accton(8), sa(8) TRADUCTION La traduction francaise de cette page de manuel a ete creee par Christophe Blaess , Stephan Rafin , Thierry Vignaud , Francois Micaux, Alain Portal , Jean-Philippe Guerard , Jean-Luc Coulon (f5ibh) , Julien Cristau , Thomas Huriaux , Nicolas Francois , Florentin Duneau , Simon Paillard , Denis Barbier , David Prevot , Cedric Boutillier , Frederic Hantrais et Jean-Pierre Giraud Cette traduction est une documentation libre ; veuillez vous reporter a la GNU General Public License version 3 concernant les conditions de copie et de distribution. Il n'y a aucune RESPONSABILITE LEGALE. Si vous decouvrez un bogue dans la traduction de cette page de manuel, veuillez envoyer un message a . Pages du manuel de Linux 6.8 2 mai 2024 acct(5)