Kernel Functions for Drivers procsignal(9F)
NAME
procsignal, procref, procunref - send a signal to a pro-
cess
SYNOPSIS
#include
#include
#include
void *procref(void)
voidprocunref(void *pref);
int procsignal(void *pref, int sig);
INTERFACE LEVEL
Solaris DI specific (Solaris DI).
PARAMETERS
pref A handle for the process to be signalled.
sig Signal number to be sent to the process.
DESCRIPTION
This set of routines allows a driver to send a signal to a
process. The routine procref() is used to retrieve an unam-
biguous reference to the process for signalling purposes.
The return value can be used as a unique handle on the pro-
cess, even if the process dies. Because system resources are
committed to a process reference, procunref() should be
used to remove it as soon as it is no longer
needed.procsignal() is used to send signal sig to the
referenced process. The following set of signals may be sent
to a process from a driver:
SIGHUP The device has been disconnected.
SIGINT The interrupt character has been received.
SIGQUIT The quit character has been received.
SunOS 5.11 Last change: 16 Jan 2006 1
Kernel Functions for Drivers procsignal(9F)
SIGPOL A pollable event has occurred.
SIGKIL Kill the process (cannot be caught or ignored).
SIGWINCH Window size change.
SIGURG Urgent data are available.
See signal.h(3HEAD) for more details on the meaning of these
signals.
If the process has exited at the time the signal was sent,
procsignal() returns an error code; the caller should
remove the reference on the process by calling procunref().
The driver writer must ensure that for each call made to
procref(), there is exactly one corresponding call to
procunref().
RETURN VALUES
The procref() returns the following:
pref An opaque handle used to refer to the current pro-
cess.
The procsignal() returns the following:
0 The process existed before the signal was sent.
-1 The process no longer exists; no signal was sent.
CONTEXT
The procunref() and procsignal() functions can be called
from user, interrupt, or kernel context. The procref()
function should be called only from user context.
SEE ALSO
signal.h(3HEAD), putnextctl1(9F)
SunOS 5.11 Last change: 16 Jan 2006 2
Kernel Functions for Drivers procsignal(9F)
Writing Device Drivers
SunOS 5.11 Last change: 16 Jan 2006 3
|