Advanced Programming in the UNIX® Environment

(lily) #1
ptg10805159

322 Signals Chapter 10


These include tcsetattr, tcsendbreak, tcdrain, tcflush,
tcflow,and tcsetpgrp.Wedescribe these terminal operations in
Chapter 18.
SIGURG This signal notifies the process that an urgent condition has occurred. It
is optionally generated when out-of-band data is received on a network
connection.

SIGUSR1 This is a user-defined signal, for use in application programs.
SIGUSR2 This is another user-defined signal, similar to SIGUSR1,for use in
application programs.

SIGVTALRM This signal is generated when a virtual interval timer set by the
setitimer( 2 )function expires.
SIGWAITINGThis signal is used internally by the Solaris threads library,and is not
available for general use.
SIGWINCH The kernel maintains the size of the window associated with each
terminal and pseudo terminal. Aprocess can get and set the window
size with theioctlfunction, which we describe in Section 18.12. If a
process changes the window size from its previous value using the
ioctlset-window-size command, the kernel generates theSIGWINCH
signal for the foreground process group.

SIGXCPU The Single UNIX Specification supports the concept of resource limits as
part of the XSI option; refer to Section 7.11. If the process exceeds its soft
CPU time limit, theSIGXCPUsignal is generated.

In Figure10.1, we labeled the default action forSIGXCPUas either ‘‘terminate’’
or ‘‘terminate with a corefile.’’The default depends on the operating system.
Linux 3.2.0 and Solaris 10 support a default action of terminate with a corefile,
whereas FreeBSD 8.0 and Mac OS X 10.6.8 support a default action of terminate
without generating a corefile. The Single UNIX Specification requires that the
default action be to terminate the process abnormally.Whether a corefile is
generated is left up to the implementation.

SIGXFSZ This signal is generated if the process exceeds its soft file size limit; refer
to Section 7.11.

Just as withSIGXCPU,the default action taken withSIGXFSZdepends on the
operating system. On Linux 3.2.0 and Solaris 10, the default is to terminate the
process and create a corefile. On FreeBSD 8.0 and Mac OS X 10.6.8, the default
is to terminate the process without generating a corefile. The Single UNIX
Specification requires that the default action be to terminate the process
abnormally.Whether a corefile is generated is left up to the implementation.

SIGXRES This signal is defined only by Solaris. It is optionally used to notify
processes that have exceeded a preconfigured resource value. The
Solaris resource control mechanism is a general facility for controlling the
use of shared resources among independent application sets.
Free download pdf