Movatterモバイル変換


[0]ホーム

URL:


Skip Navigation Links
Exit Print View
Link to oracle.comman pages section 2: System Calls    Oracle Solaris 11 Information Library
Oracle Technology Network
Library
PDF
Print View
Feedback
search filter icon
search icon
 Search Scope:

Document Information

Preface

Introduction

System Calls

access(2)

acct(2)

acl(2)

adjtime(2)

alarm(2)

brk(2)

chdir(2)

chmod(2)

chown(2)

chroot(2)

close(2)

creat(2)

dup(2)

exec(2)

execl(2)

execle(2)

execlp(2)

execv(2)

execve(2)

execvex(2)

execvp(2)

_Exit(2)

_exit(2)

exit(2)

faccessat(2)

facl(2)

fchdir(2)

fchmod(2)

fchmodat(2)

fchown(2)

fchownat(2)

fchroot(2)

fcntl(2)

fexecve(2)

fgetlabel(2)

fork1(2)

fork(2)

forkall(2)

forkallx(2)

forkx(2)

fpathconf(2)

fstat(2)

fstatat(2)

fstatvfs(2)

futimens(2)

futimesat(2)

getacct(2)

getcontext(2)

getdents(2)

getegid(2)

geteuid(2)

getgid(2)

getgroups(2)

getisax(2)

getitimer(2)

getlabel(2)

getmsg(2)

getpflags(2)

getpgid(2)

getpgrp(2)

getpid(2)

getpmsg(2)

getppid(2)

getppriv(2)

getprojid(2)

getrctl(2)

getrlimit(2)

getsid(2)

gettaskid(2)

getuid(2)

getustack(2)

ioctl(2)

issetugid(2)

kill(2)

lchown(2)

link(2)

linkat(2)

llseek(2)

lseek(2)

lstat(2)

_lwp_cond_broadcast(2)

_lwp_cond_reltimedwait(2)

_lwp_cond_signal(2)

_lwp_cond_timedwait(2)

_lwp_cond_wait(2)

_lwp_continue(2)

_lwp_info(2)

_lwp_kill(2)

_lwp_mutex_lock(2)

_lwp_mutex_trylock(2)

_lwp_mutex_unlock(2)

_lwp_self(2)

_lwp_sema_init(2)

_lwp_sema_post(2)

_lwp_sema_trywait(2)

_lwp_sema_wait(2)

_lwp_suspend(2)

memcntl(2)

meminfo(2)

mincore(2)

mkdir(2)

mkdirat(2)

mknod(2)

mknodat(2)

mmap(2)

mmapobj(2)

mount(2)

mprotect(2)

msgctl(2)

msgget(2)

msgids(2)

msgrcv(2)

msgsnap(2)

msgsnd(2)

munmap(2)

nice(2)

ntp_adjtime(2)

ntp_gettime(2)

open(2)

openat(2)

pathconf(2)

pause(2)

pcsample(2)

pipe(2)

poll(2)

p_online(2)

ppoll(2)

pread(2)

priocntl(2)

priocntlset(2)

processor_bind(2)

processor_info(2)

profil(2)

pset_assign(2)

pset_bind(2)

pset_create(2)

pset_destroy(2)

pset_getattr(2)

pset_info(2)

pset_list(2)

pset_setattr(2)

putacct(2)

putmsg(2)

putpmsg(2)

pwrite(2)

read(2)

readlink(2)

readlinkat(2)

readv(2)

rename(2)

renameat(2)

resolvepath(2)

rmdir(2)

sbrk(2)

semctl(2)

semget(2)

semids(2)

semop(2)

semtimedop(2)

setcontext(2)

setegid(2)

seteuid(2)

setgid(2)

setgroups(2)

setitimer(2)

setpflags(2)

setpgid(2)

setpgrp(2)

setppriv(2)

setrctl(2)

setregid(2)

setreuid(2)

setrlimit(2)

setsid(2)

settaskid(2)

setuid(2)

setustack(2)

shmadv(2)

shmat(2)

shmctl(2)

shmdt(2)

shmget(2)

shmids(2)

shmop(2)

sigaction(2)

sigaltstack(2)

sigpending(2)

sigprocmask(2)

sigsend(2)

sigsendset(2)

sigsuspend(2)

sigwait(2)

__sparc_utrap_install(2)

stat(2)

statvfs(2)

stime(2)

swapctl(2)

symlink(2)

symlinkat(2)

sync(2)

sysfs(2)

sysinfo(2)

time(2)

times(2)

uadmin(2)

ulimit(2)

umask(2)

umount(2)

umount2(2)

uname(2)

unlink(2)

unlinkat(2)

ustat(2)

utime(2)

utimensat(2)

utimes(2)

uucopy(2)

vfork(2)

vforkx(2)

vhangup(2)

waitid(2)

wracct(2)

write(2)

writev(2)

yield(2)

getacct

, putacct

, wracct

- get, put, or write extended accounting data

Synopsis

#include <sys/exacct.h>size_tgetacct(idtype_tidtype,id_tid,void *buf,size_tbufsize);
intputacct(idtype_tidtype,id_tid,void *buf,size_tbufsize,intflags);
intwracct(idtype_tidtype,id_tid,intflags);

Description

These functions provide access to the extended accounting facility.

Thegetacct() function returns extended accounting buffers from the kernel for currentlyexecuting tasks and processes. The resulting data buffer is a packedexacctobject that can be unpacked usingea_unpack_object() (seeea_pack_object(3EXACCT)) and subsequently manipulatedusing the functions of the extended accounting library,libexacct(3LIB).

Theputacct() function provides privileged processes the ability to tag accounting recordswith additional data specific to that process. For instance, a queueingfacility might want to record to which queue a given task orprocess was submitted prior to running. Theflags argument determines whether thecontents ofbuf should be treated as raw data (EP_RAW) or asan embeddedexacct structure (EP_EXACCT_OBJECT). In the case ofEP_EXACCT_OBJECT,buf mustbe a packedexacct object as returned byea_pack_object(3EXACCT). The use ofan inappropriate flag or the inclusion of corruptexacct data will likely corruptthe enclosingexacct file.

Thewracct() function requests the kernel to write, given its internal stateof resource usage, the appropriate data for the specified task or process.The flags field determines whether a partial (EW_PARTIAL) or interval record (EW_INTERVAL) iswritten.

These functions require root privilege, as they allow inquiry or reporting relevantto system tasks and processes other than the invoking process. Theputacct()andwracct() functions also cause the kernel to write records to thesystem's extended accounting files.

Return Values

Thegetacct() function returns the number of bytes required to represent theextended accounting record for the requested system task or process. Ifbufsize exceeds the returned size,buf will contain a valid accounting recordbuffer. Ifbufsize is less than the return value,buf will contain thefirstbufsize bytes of the record. Ifbufsize is 0,getacct() returnsonly the number of bytes required to represent the extended accounting record.In the event of failure,-1 is returned anderrno is setto indicate the error.

Theputacct() andwracct() functions return0 if the record was successfullywritten. Otherwise,-1 is returned anderrno is set to indicate theerror.

Errors

Thegetacct(),putacct(), andwracct() functions will fail if:

EINVAL

Theidtype argument was notP_TASKID orP_PID.

ENOSPC

The file system containing the extended accounting file is full. Thewracct() orputacct() function will fail if the record size would exceed the amount of space remaining on the file system.

ENOTACTIVE

The extended accounting facility for the requestedidtype_t is not active. Eitherputacct() attempted to write a task record when the task accounting file was unset, orgetacct() attempted to retrieve accounting data for a process when extended process accounting was inactive.

EPERM

The {PRIV_SYS_ACCT} privilege is not asserted in the effective set of the calling process.

ERSCH

Theid argument does not refer to a presently active system task ID or process ID.

Theputacct() andwracct() functions will fail if:

EINVAL

Theflags argument is neitherEW_PARTIAL norEW_INTERVAL.

Attributes

Seeattributes(5) for descriptions of the following attributes:

ATTRIBUTE TYPE
ATTRIBUTE VALUE
MT-Level
Async-Signal-Safe

See Also

ea_pack_object(3EXACCT),libexacct(3LIB)attributes(5)

Copyright © 2011, Oracle and/or its affiliates. All rights reserved.Legal Notices
PreviousNext

[8]ページ先頭

©2009-2025 Movatter.jp