acct

Autres langues

Langue: ru

Autres versions - même langue

Version: 1998-11-04 (fedora - 25/11/07)

Autres sections - même nom

Section: 2 (Appels système)

ИМЯ

acct - включает или выключает учёт процессов

ОБЗОР

 #include <unistd.h>
 
 int acct(const char *filename);
 

ОПИСАНИЕ

Когда при вызове, в качестве аргумента, указывается имя существующего файла, происходит включение учёта, при завершении процесса, в файл filename добавляются записи для каждого завершившегося процесса. Если в качестве аргумента указан NULL, то учёт выключается.

ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ

В случае успеха, возвращается ноль. В случае ошибки возвращается -1 и errno устанавливается в соответствующее значение.

ОШИБКИ

EACCES
Для указанного файла отсутствуют права на запись.
EACCES
Аргумент filename не является обычным файлом.
EFAULT
filename указывает за пределы доступного вам адресного пространства.
EIO
Ошибка записи в файл filename.
EISDIR
filename является каталогом.
ELOOP
Во время определения filename встретилось слишком много символьных ссылок (зацикливание по символьным сслыкам -- прим. пер.).
ENAMETOOLONG
filename слишком длинно.
ENOENT
Файл с указанным именем не существует.
ENOMEM
Не хаватает памяти.
ENOSYS
BSD учёт процессов не может быть разрешён, если эта возможность не была включена при компиляции ядра операционной системы. Этой возможностью управляет конфигурационный параметр ядра CONFIG_BSD_PROCESS_ACCT.
ENOTDIR
Один из компонентов в пути filename который указан как каталог, на самом деле не является каталогом.
EPERM
Вызывающий процесс не имеет прав для того, чтобы разрешить учёт процессов.
EROFS
filename указывает на файл в файловой системе, доступной только для чтения.
EUSERS
Больше нет свободных файловых структур или произошло переполнение памяти.

СОВМЕСТИМОСТЬ СО СТАНДАРТАМИ

SVr4 (но не POSIX). SVr4 документирует условия ошибки EBUSY, но не ошибок EISDIR или ENOSYS. Также AIX и HPUX документируют ошибку EBUSY (попытку разрешить учёт, когда он уже разрешён), как в Solaris (попытка разрешить учёт, используя такое же имя файла, которое уже было использовано).

ЗАМЕЧАНИЕ

Учёт не производится для программ, которые заканчиваются аварийно. В частности, незавершаемые процессы никогда не учитываются.

ПЕРЕВОД

Перевёл с английского Виктор Вислобоков <corochoone@perm.ru> 2003