man acct (Appels systèmes) - Activer/désactiver la comptabilité des processus.
NOM
acct - Activer/désactiver la comptabilité des processus.
SYNOPSIS
#include <unistd.h> int acct(const char *filename);
DESCRIPTION
Quand la fonction est appelée avec un nom de fichier existant comme argument, la comptabilité est mise en marche, un enregistrement étant ajouté à filename à la fin de chaque processus. Un argument NULL arrête la comptabilité.
VALEUR RENVOYÉE
L'appel renvoie 0 quand il réussit, ou -1 s'il échoue, auquel cas errno contient le code d'erreur.
ERREURS
- EACCESS
- Interdiction d'écrire dans le fichier indiqué.
- EACCESS
- L'argument filename n'est pas un fichier régulier.
- EFAULT
- filename pointe en dehors de l'espace d'adressage autorisé.
- EIO
- Impossible d'écrire dans le fichier filename.
- EISDIR
- filename est un répertoire.
- ELOOP
- Références symboliques circulaires dans le chemin d'accès à filename.
- ENAMETOOLONG
- filename est trop long.
- ENOENT
- Le nom de fichier indiqué n'existe pas.
- ENOMEM
- Pas assez de mémoire.
- ENOSYS
- Le système de comptabilité BSD n'a pas été activé lors de la compilation du noyau. Le paramètre de configuration du noyau contrôlant cette option est CONFIG_BSD_PROCESS_ACCT.
- ENOTDIR
- Un composant du chemin d'accès à filename n'est pas un répertoire.
- EPERM
- L'appelant n'a pas la permission d'activer la comptabilité.
- EROFS
- filename se trouve sur un système de fichiers en lecture seule.
- EUSERS
- Il n'y a plus de structures de fichiers libres, ou pas assez de mémoire.
CONFORMITÉ
SVr4 (mais pas POSIX). SVr4 indique une condition d'erreur EBUSY, mais ni EISDIR ni ENOSYS. De même AIX et HP-UX documentent EBUSY (essai d'activation alors que la comptabilité est déjà en fonctionnement), comme Solaris (essai d'activation de la comptabilité avec le même fichier que celui déjà en cours d'utilisation).
NOTES
Aucune comptabilisation n'est effectuée pour les programmes en cours d'exécution si un plantage système survient. En particulier les processus qui ne se terminent jamais ne sont pas comptabilisés.
TRADUCTION
Christophe Blaess, 1996-2003.