ИМЯ acct - включает или выключает учёт процессов
ОБЗОР #include <unistd.h>
int acct(const char *filename);
Требования макроса тестирования свойств для glibc (см. feature_test_macros(7)):
acct(): начиная с glibc 2.21: _DEFAULT_SOURCE в glibc 2.19 и 2.20: _DEFAULT_SOURCE || (_XOPEN_SOURCE && _XOPEN_SOURCE < 500) до glibc 2.19, включительно: _BSD_SOURCE || (_XOPEN_SOURCE && _XOPEN_SOURCE < 500)
ОПИСАНИЕ Системный вызов acct() включает или выключает учёт процессов. Если при вызове, в качестве аргумента, указывается имя существующего файла, происходит включение учёта, и при завершении процесса, в файл filename добавляются записи для каждого завершившегося процесса. Если в качестве аргумента указан NULL, то учёт выключается.
ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ При успешном выполнении возвращается 0. В случае ошибки возвращается -1, а errno устанавливается в соответствующее значение.
ОШИБКИ EACCES Нет прав на запись в указанный файл, или в одном из каталогов в pathname не разрешён поиск (см. также path_resolution(7)), или filename не является обычным файлом.
EFAULT Аргумент filename указывает за пределы доступного адресного пространства.
EIO Ошибка записи в файл filename.
EISDIR filename является каталогом.
ELOOP Во время определения pathname встретилось слишком много символьных ссылок.
ENAMETOOLONG Слишком длинное значение аргумента pathname.
ENFILE Достигнуто максимальное количество открытых файлов в системе.
ENOENT Указанный файл не существует.
ENOMEM Не хватает памяти.
ENOSYS BSD учёт процессов не может быть разрешён, если эта возможность не была включена при компиляции ядра операционной системы. Этой возможностью управляет параметр настройки ядра CONFIG_BSD_PROCESS_ACCT.
ENOTDIR Компонент пути в pathname в действительности не является каталогом.
SVr4, 4.3BSD (но не POSIX).
ЗАМЕЧАНИЯ Учёт не производится для программ, которые заканчиваются аварийно. В частности, незавершаемые процессы никогда не учитываются.
Структура записей, записываемых в файл учёта, описана в acct(5).
СМОТРИТЕ ТАКЖЕ acct(5)
|