acct()函數 Unix/Linux
名稱
acct - 切換或關閉進程記帳
內容簡介
#include <unistd.h>
int acct(const char **filename*);
描述
與現有的文件名作爲參數調用時,佔被打開,每個終止的進程的記錄,被追加到文件名作爲終止。參數爲NULL 引起佔用被關閉。
返回值
成功則返回0。錯誤則返回-1,errno 設置爲合適。
錯誤
標籤
描述
EACCES
Write permission is denied for the specified file, or search permission is denied for one of the directories in the path prefix of filename (see also path_resolution(2)), or filename is not a regular file.
EFAULT
filename points outside your accessible address space.
EIO
Error writing to the file filename.
EISDIR
filename is a directory.
ELOOP
Too many symbolic links were encountered in resolving filename.
ENAMETOOLONG
filename was too long.
ENFILE
The system limit on the total number of open files has been reached.
ENOENT
The specified filename does not exist.
ENOMEM
Out of memory.
ENOSYS
BSD process accounting has not been enabled when the operating system kernel was compiled. The kernel configuration parameter controlling this feature is CONFIG_BSD_PROCESS_ACCT.
ENOTDIR
A component used as a directory in filename is not in fact a directory.
EPERM
The calling process has insufficient privilege to enable process accounting. On Linux the CAP_SYS_PACCT capability is required.
EROFS
filename refers to a file on a read-only file system.
EUSERS
There are no more free file structures or we ran out of memory.
遵循於
SVr4, 4.3BSD (but not POSIX).
注意
沒有賬號產生的程序運行時發生崩潰。特別是無窮的過程從來沒有賬號。