Movatterモバイル変換


[0]ホーム

URL:


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

Document Information

Preface

Introduction

Library Interfaces and Headers

acct(3HEAD)

acct.h(3HEAD)

aio(3HEAD)

aio.h(3HEAD)

ar(3HEAD)

archives(3HEAD)

archives.h(3HEAD)

ar.h(3HEAD)

assert(3HEAD)

assert.h(3HEAD)

complex(3HEAD)

complex.h(3HEAD)

cpio(3HEAD)

cpio.h(3HEAD)

dirent(3HEAD)

dirent.h(3HEAD)

errno(3HEAD)

errno.h(3HEAD)

fcntl(3HEAD)

fcntl.h(3HEAD)

fenv(3HEAD)

fenv.h(3HEAD)

float(3HEAD)

float.h(3HEAD)

floatingpoint(3HEAD)

floatingpoint.h(3HEAD)

fmtmsg(3HEAD)

fmtmsg.h(3HEAD)

fnmatch(3HEAD)

fnmatch.h(3HEAD)

ftw(3HEAD)

ftw.h(3HEAD)

glob(3HEAD)

glob.h(3HEAD)

grp(3HEAD)

grp.h(3HEAD)

iconv(3HEAD)

iconv.h(3HEAD)

if(3HEAD)

if.h(3HEAD)

in(3HEAD)

inet(3HEAD)

inet.h(3HEAD)

in.h(3HEAD)

inttypes(3HEAD)

inttypes.h(3HEAD)

ipc(3HEAD)

ipc.h(3HEAD)

iso646(3HEAD)

iso646.h(3HEAD)

langinfo(3HEAD)

langinfo.h(3HEAD)

lib300(3LIB)

lib300s(3LIB)

lib4014(3LIB)

lib450(3LIB)

libadm(3LIB)

libaio(3LIB)

libauto_ef(3LIB)

libbsdmalloc(3LIB)

libc(3LIB)

libc_db(3LIB)

libcfgadm(3LIB)

libcommputil(3LIB)

libcontract(3LIB)

libcpc(3LIB)

libcrypt(3LIB)

libcurses(3LIB)

libdat(3LIB)

libdevid(3LIB)

libdevinfo(3LIB)

libdl(3LIB)

libdlpi(3LIB)

libdns_sd(3LIB)

libdoor(3LIB)

libdtrace(3LIB)

libefi(3LIB)

libelf(3LIB)

libexacct(3LIB)

libfcoe(3LIB)

libfmevent(3LIB)

libform(3LIB)

libfstyp(3LIB)

libgen(3HEAD)

libgen(3LIB)

libgen.h(3HEAD)

libgss(3LIB)

libhbaapi(3LIB)

libidnkit(3LIB)

libilb(3LIB)

libintl(3HEAD)

libintl(3LIB)

libintl.h(3HEAD)

libiscsit(3LIB)

libkmf(3LIB)

libkrb5(3LIB)

libkstat(3LIB)

libkvm(3LIB)

libl(3LIB)

liblayout(3LIB)

liblgrp(3LIB)

libm(3LIB)

libmail(3LIB)

libmalloc(3LIB)

libmapmalloc(3LIB)

libmd(3LIB)

libmd5(3LIB)

libmenu(3LIB)

libmlib(3LIB)

libmlib_mt(3LIB)

libmp(3LIB)

libMPAPI(3LIB)

libmpapi(3LIB)

libmtmalloc(3LIB)

libmvec(3LIB)

libnsl(3LIB)

libnvpair(3LIB)

libpam(3LIB)

libpanel(3LIB)

libpapi(3LIB)

libpctx(3LIB)

libpicl(3LIB)

libpicltree(3LIB)

libpkcs11(3LIB)

libplot(3LIB)

libpool(3LIB)

libposix4(3LIB)

libproject(3LIB)

libpthread(3LIB)

libreparse(3LIB)

libresolv(3LIB)

librpcsvc(3LIB)

librt(3LIB)

librtld_db(3LIB)

libsasl(3LIB)

libscf(3LIB)

libsctp(3LIB)

libsec(3LIB)

libsecdb(3LIB)

libsendfile(3LIB)

libsip(3LIB)

libslp(3LIB)

libSMHBAAPI(3LIB)

libsmhbaapi(3LIB)

libsocket(3LIB)

libsrpt(3LIB)

libssagent(3LIB)

libssasnmp(3LIB)

libstmf(3LIB)

libsys(3LIB)

libsysevent(3LIB)

libtecla(3LIB)

libtermcap(3LIB)

libtermlib(3LIB)

libthread(3LIB)

libtsalarm(3LIB)

libtsnet(3LIB)

libtsol(3LIB)

libumem(3LIB)

libusb(3LIB)

libuuid(3LIB)

libv12n(3LIB)

libvolmgt(3LIB)

libvt0(3LIB)

libw(3LIB)

libwsreg(3LIB)

libxnet(3LIB)

libXtsol(3LIB)

libxtsol(3LIB)

liby(3LIB)

libzonestat(3LIB)

limits(3HEAD)

limits.h(3HEAD)

locale(3HEAD)

locale.h(3HEAD)

math(3HEAD)

math.h(3HEAD)

mman(3HEAD)

mman.h(3HEAD)

monetary(3HEAD)

monetary.h(3HEAD)

mqueue(3HEAD)

mqueue.h(3HEAD)

msg(3HEAD)

msg.h(3HEAD)

ndbm(3HEAD)

ndbm.h(3HEAD)

netdb(3HEAD)

netdb.h(3HEAD)

nl_types(3HEAD)

nl_types.h(3HEAD)

paths(3HEAD)

paths.h(3HEAD)

poll(3HEAD)

poll.h(3HEAD)

pthread(3HEAD)

pthread.h(3HEAD)

pwd(3HEAD)

pwd.h(3HEAD)

regex(3HEAD)

regex.h(3HEAD)

resource(3HEAD)

resource.h(3HEAD)

sched(3HEAD)

sched.h(3HEAD)

search(3HEAD)

search.h(3HEAD)

select(3HEAD)

select.h(3HEAD)

sem(3HEAD)

semaphore(3HEAD)

semaphore.h(3HEAD)

sem.h(3HEAD)

setjmp(3HEAD)

setjmp.h(3HEAD)

shm(3HEAD)

shm.h(3HEAD)

siginfo(3HEAD)

siginfo.h(3HEAD)

signal(3HEAD)

signal.h(3HEAD)

SMHBA_GetAdapterAttributes(3LIB)

SMHBA_GetAdapterPortAttributes(3LIB)

SMHBA_GetBindingCapability(3LIB)

SMHBA_GetBindingSupport(3LIB)

SMHBA_GetDiscoveredPortAttributes(3LIB)

SMHBA_GetFCPhyAttributes(3LIB)

SMHBA_GetLUNStatistics(3LIB)

SMHBA_GetNumberofPorts(3LIB)

SMHBA_GetPersistentBinding(3LIB)

SMHBA_GetPhyStatistics(3LIB)

SMHBA_GetPortAttributesByWWN(3LIB)

SMHBA_GetPortType(3LIB)

SMHBA_GetProtocolStatistics(3LIB)

SMHBA_GetSASPhyAttributes(3LIB)

SMHBA_GetTargetMapping(3LIB)

SMHBA_GetVendorLibraryAttributes(3LIB)

SMHBA_GetVersion(3LIB)

SMHBA_GetWrapperLibraryAttributes(3LIB)

SMHBA_RegisterForAdapterAddEvents(3LIB)

SMHBA_RegisterForAdapterEvents(3LIB)

SMHBA_RegisterForAdapterPhyStatEvents(3LIB)

SMHBA_RegisterForAdapterPortEvents(3LIB)

SMHBA_RegisterForAdapterPortStatEvents(3LIB)

SMHBA_RegisterForTargetEvents(3LIB)

SMHBA_RegisterLibrary(3LIB)

SMHBA_RemoveAllPersistentBindings(3LIB)

SMHBA_RemovePersistentBinding(3LIB)

SMHBA_ScsiInquiry(3LIB)

SMHBA_ScsiReadCapacity(3LIB)

SMHBA_ScsiReportLuns(3LIB)

SMHBA_SendECHO(3LIB)

SMHBA_SendSMPPassThru(3LIB)

SMHBA_SendTEST(3LIB)

SMHBA_SetBindingSupport(3LIB)

SMHBA_SetPersistentBinding(3LIB)

socket(3HEAD)

socket.h(3HEAD)

spawn(3HEAD)

spawn.h(3HEAD)

stat(3HEAD)

stat.h(3HEAD)

statvfs(3HEAD)

statvfs.h(3HEAD)

stdbool(3HEAD)

stdbool.h(3HEAD)

stddef(3HEAD)

stddef.h(3HEAD)

stdint(3HEAD)

stdint.h(3HEAD)

stdio(3HEAD)

stdio.h(3HEAD)

stdlib(3HEAD)

stdlib.h(3HEAD)

string(3HEAD)

string.h(3HEAD)

strings(3HEAD)

strings.h(3HEAD)

stropts(3HEAD)

stropts.h(3HEAD)

syslog(3HEAD)

syslog.h(3HEAD)

tar(3HEAD)

tar.h(3HEAD)

tcp(3HEAD)

tcp.h(3HEAD)

termios(3HEAD)

termios.h(3HEAD)

tgmath(3HEAD)

tgmath.h(3HEAD)

time(3HEAD)

timeb(3HEAD)

timeb.h(3HEAD)

time.h(3HEAD)

times(3HEAD)

times.h(3HEAD)

types32(3HEAD)

types32.h(3HEAD)

types(3HEAD)

types.h(3HEAD)

ucontext(3HEAD)

ucontext.h(3HEAD)

uio(3HEAD)

uio.h(3HEAD)

ulimit(3HEAD)

ulimit.h(3HEAD)

un(3HEAD)

un.h(3HEAD)

unistd(3HEAD)

unistd.h(3HEAD)

utime(3HEAD)

utime.h(3HEAD)

utmpx(3HEAD)

utmpx.h(3HEAD)

utsname(3HEAD)

utsname.h(3HEAD)

values(3HEAD)

values.h(3HEAD)

wait(3HEAD)

wait.h(3HEAD)

wchar(3HEAD)

wchar.h(3HEAD)

wctype(3HEAD)

wctype.h(3HEAD)

wordexp(3HEAD)

wordexp.h(3HEAD)

siginfo.h

, siginfo

- signal generation information

Synopsis

#include <siginfo.h>

Description

If a process is catching a signal, it might request informationthat tells why the system generated that signal. Seesigaction(2). Ifa process is monitoring its children, it might receive information that tells whya child changed state. Seewaitid(2). In either case, the systemreturns the information in a structure of typesiginfo_t, which includes thefollowing information:

int            si_signo        /* signal number */int            si_errno        /* error number */int            si_code         /* signal code */union sigval   si_value        /* signal value */

si_signo contains the system-generated signal number. For thewaitid(2) function,si_signo is alwaysSIGCHLD.

Ifsi_errno is non-zero, it contains an error number associated withthis signal, as defined in<errno.h>.

si_code contains a code identifying the cause of the signal.

If the value of thesi_code member isSI_NOINFO, onlythesi_signo member ofsiginfo_t is meaningful, and the value ofall other members is unspecified.

User Signals

If the value ofsi_code is less than or equal to0, then the signal was generated by a user process (seekill(2),_lwp_kill(2),sigqueue(3C),sigsend(2),abort(3C), andraise(3C)) and thesiginfo structurecontains the following additional information:

pid_t        si_pid      /* sending process ID */uid_t        si_uid      /* sending user ID */ctid_t       si_ctid     /* sending contract ID */zoneid_t     si_zoneid   /* sending zone ID */S

If the signal was generated by a user process, the following valuesare defined forsi_code:

SI_USER

The implementation setssi_code toSI_USER if the signal was sent bykill(2),sigsend(2),raise(3C) orabort(3C).

SI_LWP

The signal was sent by_lwp_kill(2).

SI_QUEUE

The signal was sent bysigqueue(3C).

SI_TIMER

The signal was generated by the expiration of a timer created bytimer_settime(3C).

SI_ASYNCIO

The signal was generated by the completion of an asynchronous I/O request.

SI_MESGQ

The signal was generated by the arrival of a message on an empty message queue. Seemq_notify(3C).

si_value contains the application specified value, which is passed to the application'ssignal-catching function at the time of the signal delivery ifsi_codeis any ofSI_QUEUE,SI_TIMER,SI_ASYNCHIO, orSI_MESGQ.

System Signals

Non-user generated signals can arise for a number of reasons. For allof these cases,si_code contains a positive value reflecting the reason whythe system generated the signal:

Signal
Code
Reason
SIGILL
ILL_ILLOPC
illegal opcode
ILL_ILLOPN
illegal operand
ILL_ILLADR
illegal addressing mode
ILL_ILLTRP
illegal trap
ILL_PRVOPC
privileged opcode
ILL_PRVREG
privileged register
ILL_COPROC
co-processorerror
ILL_BADSTK
internal stack error
SIGFPE
FPE_INTDIV
integer divide by zero
FPE_INTOVF
integer overflow
FPE_FLTDIV
floating point divide by zero
FPE_FLTOVF
floating pointoverflow
FPE_FLTUND
floating point underflow
FPE_FLTRES
floating point inexact result
FPE_FLTINV
invalid floating point operation
FPE_FLTSUB
subscript out of range
SIGSEGV
SEGV_MAPERR
addressnot mapped to object
SEGV_ACCERR
invalid permissions for mapped object
SIGBUS
BUS_ADRALN
invalid address alignment
BUS_ADRERR
non-existent physical address
BUS_OBJERR
objectspecific hardware error
SIGTRAP
TRAP_BRKPT
process breakpoint
TRAP_TRACE
process trace trap
SIGCHLD
CLD_EXITED
child has exited
CLD_KILLED
child was killed
CLD_DUMPED
child terminated abnormally
CLD_TRAPPED
tracedchild has trapped
CLD_STOPPED
child has stopped
CLD_CONTINUED
stopped child had continued
SIGPOLL
POLL_IN
data input available
POLL_OUT
output buffers available
POLL_MSG
inputmessage available
POLL_ERR
I/O error
POLL_PRI
high priority input available
POLL_HUP
device disconnected

Signals can also be generated from the resource control subsystem. Where thesesignals do not already possess kernel-levelsiginfo codes, thesiginfosi_code willbe filled withSI_RCTL to indicate a kernel-generated signal from an established resourcecontrol value.

Signal
Code
Reason
SIGXRES
SI_RCTL
resource–control generated signal
SIGHUP
SIGTERM
The uncatchable signalsSIGSTOP andSIGKILL have undefinedsiginfo codes.

Signals sent with asiginfo code ofSI_RCTL contain code-dependent information forkernel-generated signals:

Code
Field
Value
SI_RCTL
hr_time si_entity
process-model entity of control

In addition, the following signal-dependent information is available for kernel-generated signals:

Signal
Field
Value
SIGILL
caddr_t si_addr
addressof faulting instruction
SIGFPE
SIGSEGV
caddr_t si_addr
address of faulting memory reference
SIGBUS
SIGCHLD
pid_t si_pid
child process ID
intsi_status
exit value or signal
SIGPOLL
long si_band
band event forPOLL_IN,POLL_OUT, orPOLL_MSG

See Also

_lwp_kill(2),kill(2),setrctl(2),sigaction(2),sigsend(2),waitid(2),abort(3C),aio_read(3C),mq_notify(3C),raise(3C),signal.h(3HEAD),sigqueue(3C),timer_create(3C),timer_settime(3C)

Notes

ForSIGCHLD signals, ifsi_code is equal toCLD_EXITED,thensi_status is equal to the exit value of the process;otherwise, it is equal to the signal that caused the process to change state. For some implementations, the exact value ofsi_addr might notbe available; in that case,si_addr is guaranteed to be on thesame page as the faulting instruction or memory reference.

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

[8]ページ先頭

©2009-2025 Movatter.jp