STREAMS Programming Guide
只搜尋這本書
以 PDF 格式下載這本書 (1566 KB)
A
accessing queue information, strqget ( Index Term Link )
adb ( Index Term Link )
adjmsg ( Index Term Link )
administration tools
strace ( Index Term Link )
strerr ( Index Term Link )
strlog ( Index Term Link )
strqget ( Index Term Link )
strqset ( Index Term Link )
allocate header for output message, example ( Index Term Link )
allocb ( Index Term Link )
example ( Index Term Link )
anchor ( Index Term Link )
anchors ( Index Term Link ) ( Index Term Link ) ( Index Term Link )
client ( Index Term Link )
lock ( Index Term Link )
privilege ( Index Term Link )
server ( Index Term Link )
append a character to a message block, example ( Index Term Link )
asynchronous callback functions, perimeter ( Index Term Link )
asynchronous input/output, in polling ( Index Term Link )
AT&T STREAMS ( Index Term Link )
autopush ( Index Term Link ) ( Index Term Link )
autopush configuration file, example ( Index Term Link )
B
b_band ( Index Term Link )
placement ( Index Term Link )
b_next ( Index Term Link )
b_prev ( Index Term Link )
b_rptr ( Index Term Link )
b_wptr ( Index Term Link )
back-enable of a queue ( Index Term Link )
background job, in job control ( Index Term Link )
backq ( Index Term Link )
bandinfo structure
example ( Index Term Link )
flush band priority ( Index Term Link )
bcanput ( Index Term Link )
bidirectional transfer
example ( Index Term Link ) ( Index Term Link )
boundary, data and message ( Index Term Link )
bp ( Index Term Link )
bp->b_rptr ( Index Term Link )
bp->b_wptr ( Index Term Link )
breaking stream connections for loop-around device, example ( Index Term Link )
bufcall ( Index Term Link ) ( Index Term Link )
releasing callback requests ( Index Term Link )
C
canput ( Index Term Link )
cb_ops structure
character and block device information ( Index Term Link )
driver entry point ( Index Term Link )
driver entry points for non-STREAMS drivers ( Index Term Link )
check module type, regular driver, module, or cloneable driver ( Index Term Link )
check/print module list ( Index Term Link )
cloning (STREAMS) ( Index Term Link )
close, dismantling the stream ( Index Term Link )
close a module, example ( Index Term Link )
cmn_err, message strings ( Index Term Link )
compile, assemble and link commands, example ( Index Term Link )
configuration entry point
STREAMS driver ( Index Term Link ) ( Index Term Link )
connld ( Index Term Link ) ( Index Term Link )
controlling terminal ( Index Term Link )
copy data from user space to kernel space, example ( Index Term Link )
copymsg ( Index Term Link )
crash ( Index Term Link )
dbfree ( Index Term Link )
dblock ( Index Term Link )
linkblk ( Index Term Link )
mbfree ( Index Term Link )
mblock ( Index Term Link )
pty ( Index Term Link )
qrun ( Index Term Link )
queue ( Index Term Link )
stream ( Index Term Link )
strstat ( Index Term Link )
tty ( Index Term Link )
create priority band message ( Index Term Link )
D
DARAM
allocation ( Index Term Link )
freeing ( Index Term Link )
memory shared by kernel and I/O card ( Index Term Link )
data and message boundaries
RMODEMASK ( Index Term Link )
RMSGD ( Index Term Link )
RMSGN ( Index Term Link )
RNORM ( Index Term Link )
Data Link Provider Interfaces ( Index Term Link )
datab structure ( Index Term Link )
example ( Index Term Link )
datamsg ( Index Term Link )
db_base ( Index Term Link )
DDI, Device Driver Interface ( Index Term Link )
ddi_copyin ( Index Term Link )
ddi_copyout ( Index Term Link )
declarations for the loop-around driver, example ( Index Term Link )
definitions of priority band fields, example ( Index Term Link )
dev_ops structure
driver entry point ( Index Term Link )
represents a specific class or type of device ( Index Term Link )
device driver
character device ( Index Term Link )
definition ( Index Term Link )
device types ( Index Term Link )
STREAMS driver characteristics ( Index Term Link )
device interrupt handler, example ( Index Term Link )
difference between driver and a module ( Index Term Link )
DLPI ( Index Term Link )
driver
ioctl control ( Index Term Link )
STREAMS ( Index Term Link ) ( Index Term Link )
driver configuration entry points, example ( Index Term Link )
driver entry point
cb_ops structure ( Index Term Link )
dev_ops structure ( Index Term Link )
load kernel module ( Index Term Link )
streamtab ( Index Term Link )
driver entry points ( Index Term Link )
driver flush handling, example ( Index Term Link )
driver interrupt, STREAMS driver ( Index Term Link )
driver interrupt handling, example ( Index Term Link )
dupb ( Index Term Link )
dupmsg ( Index Term Link )
E
ECHOCTL ( Index Term Link )
empty pipe
user process attempts read ( Index Term Link )
user process attempts write ( Index Term Link )
enableok ( Index Term Link )
entry point
close ( Index Term Link )
open ( Index Term Link )
error event
POLLERR ( Index Term Link )
POLLHUP ( Index Term Link )
POLLNVAL ( Index Term Link )
error events, polling ( Index Term Link )
esballoc ( Index Term Link ) ( Index Term Link )
example ( Index Term Link )
esballoc(9F), outstanding callbacks from ( Index Term Link )
EUC handling in ldterm ( Index Term Link )
EUC header file, example ( Index Term Link )
event polling ( Index Term Link )
example ( Index Term Link )
explicit locks
message ordering ( Index Term Link )
module ( Index Term Link )
explicit locks, constraints, module ( Index Term Link )
extended STREAMS buffers ( Index Term Link ) ( Index Term Link )
allocation ( Index Term Link )
freeing ( Index Term Link )
F
fattach ( Index Term Link )
fdetach ( Index Term Link )
FIFO (STREAMS) ( Index Term Link )
basic operations ( Index Term Link )
flush ( Index Term Link ) ( Index Term Link )
file descriptor passing ( Index Term Link )
filter module, example ( Index Term Link )
flow control ( Index Term Link ) ( Index Term Link ) ( Index Term Link )
check existence of message of particular priority ( Index Term Link )
check if certain band is writable ( Index Term Link )
check if message is marked ( Index Term Link )
expedited data ( Index Term Link )
get priority of first message ( Index Term Link )
in line discipline module ( Index Term Link )
in module ( Index Term Link ) ( Index Term Link )
processing of ordinary message ( Index Term Link )
routines ( Index Term Link ) ( Index Term Link )
test for ( Index Term Link )
flush handling
description ( Index Term Link ) ( Index Term Link )
flags ( Index Term Link ) ( Index Term Link ) ( Index Term Link )
in driver ( Index Term Link )
line discipline ( Index Term Link )
pipes and FIFOs ( Index Term Link )
flush handling, priority band data, example ( Index Term Link )
flush handling, read side, example ( Index Term Link )
flush handling, write side, example ( Index Term Link )
flushband ( Index Term Link )
flushing a queue, part 1, example ( Index Term Link )
flushing priority band data ( Index Term Link )
description ( Index Term Link )
flushing stream data
arguments passed to M_FLUSH ( Index Term Link )
description ( Index Term Link )
flushq ( Index Term Link ) ( Index Term Link )
fmodsw structure ( Index Term Link )
foreground job, in job control ( Index Term Link )
free routine ( Index Term Link )
freeb ( Index Term Link )
freemsg ( Index Term Link )
freezestr ( Index Term Link )
frequently asked IP interface questions ( Index Term Link )
full-duplex processing ( Index Term Link )
G
get stream module list, example ( Index Term Link )
getq ( Index Term Link )
grantpt ( Index Term Link )
with pseudo-tty driver ( Index Term Link )
H
hardening advice
canputnext ( Index Term Link )
copyb ( Index Term Link )
copymsg ( Index Term Link )
db_ref > 1 ( Index Term Link )
dupb ( Index Term Link )
dupmsg ( Index Term Link )
ensure uniform changing of pointers ( Index Term Link )
incorrect user data ( Index Term Link )
proper bit alignment ( Index Term Link )
putnext ( Index Term Link ) ( Index Term Link )
qprocson ( Index Term Link )
removing an anchor ( Index Term Link )
retain db_base <= b_rptr <= b_wptr <= db_lim ( Index Term Link )
strqget ( Index Term Link )
strqset ( Index Term Link )
hardware emulation module ( Index Term Link ) ( Index Term Link ) ( Index Term Link )
high-priority message ( Index Term Link ) ( Index Term Link )
M_COPYIN ( Index Term Link )
M_COPYOUT ( Index Term Link )
M_ERROR ( Index Term Link )
M_FLUSH ( Index Term Link )
M_HANGUP ( Index Term Link )
M_IOCACK ( Index Term Link )
M_IOCDATA ( Index Term Link )
M_IOCNAK ( Index Term Link )
M_PCPROTO ( Index Term Link )
M_PCRSE ( Index Term Link )
M_PCSIG ( Index Term Link )
M_READ ( Index Term Link )
M_STOP ( Index Term Link )
M_STOPI ( Index Term Link )
M_UNHANGUP ( Index Term Link )
SO_MREADOFF ( Index Term Link )
SO_MREADOFI ( Index Term Link )
I
I_ANCHOR ( Index Term Link ) ( Index Term Link ) ( Index Term Link ) ( Index Term Link )
I_LIST ioctl, example ( Index Term Link )
I_SETSIG event
S_BANDURG ( Index Term Link )
S_ERROR ( Index Term Link )
S_HANGUP ( Index Term Link )
S_HIPRI ( Index Term Link )
S_INPUT ( Index Term Link )
S_MSG ( Index Term Link )
S_OUTPUT ( Index Term Link )
S_RDBAND ( Index Term Link )
S_RDNORM ( Index Term Link )
S_WRBAND ( Index Term Link )
S_WRNORM ( Index Term Link )
infinite loop, service procedure ( Index Term Link )
initialization entry point, STREAMS driver ( Index Term Link )
initialization entry points, example ( Index Term Link )
initialization routines for the loop-around driver, example ( Index Term Link )
input/output polling ( Index Term Link ) ( Index Term Link )
insq, insq ( Index Term Link )
inter_rcv, example ( Index Term Link )
inter_snd, send data to service provider, example ( Index Term Link )
interrupt handler, STREAMS driver ( Index Term Link )
iocblk structure ( Index Term Link )
example ( Index Term Link )
with M_IOCTL ( Index Term Link )
ioctl ( Index Term Link )
command summary ( Index Term Link )
EUC_WSET ( Index Term Link )
general processing ( Index Term Link ) ( Index Term Link )
handled by ptem ( Index Term Link )
hardware emulation module ( Index Term Link )
I_ANCHOR ( Index Term Link ) ( Index Term Link ) ( Index Term Link ) ( Index Term Link )
I_ATMARK ( Index Term Link ) ( Index Term Link )
I_CANPUT ( Index Term Link ) ( Index Term Link )
I_CKBAND ( Index Term Link ) ( Index Term Link )
I_FDINSERT ( Index Term Link )
I_FIND ( Index Term Link )
I_FLUSH ( Index Term Link ) ( Index Term Link )
I_FLUSHBAND ( Index Term Link ) ( Index Term Link ) ( Index Term Link )
I_GETBAND ( Index Term Link ) ( Index Term Link )
I_GETCLTIME ( Index Term Link )
I_GRDOPT ( Index Term Link )
I_GWROPT ( Index Term Link ) ( Index Term Link )
I_LINK ( Index Term Link ) ( Index Term Link ) ( Index Term Link ) ( Index Term Link )
I_LIST ( Index Term Link )
I_LOOK ( Index Term Link )
I_NREAD ( Index Term Link )
I_PEEK ( Index Term Link )
I_PLINK ( Index Term Link ) ( Index Term Link ) ( Index Term Link ) ( Index Term Link )
I_POP ( Index Term Link ) ( Index Term Link ) ( Index Term Link )
I_PUNLINK ( Index Term Link ) ( Index Term Link ) ( Index Term Link ) ( Index Term Link )
I_PUSH ( Index Term Link ) ( Index Term Link ) ( Index Term Link )
I_RECVFD ( Index Term Link ) ( Index Term Link )
I_SENDFD ( Index Term Link ) ( Index Term Link ) ( Index Term Link )
I_SETCLTIME ( Index Term Link )
I_SETSIG ( Index Term Link )
I_SETSIG events ( Index Term Link )
I_SRDOPT ( Index Term Link ) ( Index Term Link )
I_STR ( Index Term Link )
I_STR processing ( Index Term Link )
I_SWROPT ( Index Term Link ) ( Index Term Link )
I_UNLINK ( Index Term Link ) ( Index Term Link ) ( Index Term Link ) ( Index Term Link )
ISPTM ( Index Term Link )
_RECVFD ( Index Term Link )
SAD_GAP ( Index Term Link )
SAD_SAP ( Index Term Link )
SAP_ALL ( Index Term Link )
SAP_CLEAR ( Index Term Link )
SAP_ONE ( Index Term Link )
SAP_RANGE ( Index Term Link )
SIOCSPGRP ( Index Term Link )
supported by ldterm ( Index Term Link )
supported by master driver ( Index Term Link )
TIOCREMOTE ( Index Term Link )
TIOCSIGNAL ( Index Term Link )
TIOCSPGRP ( Index Term Link )
transparent ( Index Term Link ) ( Index Term Link ) ( Index Term Link )
transparent processing ( Index Term Link )
UNLKPT ( Index Term Link )
user context ( Index Term Link )
isastream ( Index Term Link )
J
job control ( Index Term Link ) ( Index Term Link )
background process group ( Index Term Link )
controlling process ( Index Term Link )
controlling terminal ( Index Term Link )
foreground process group ( Index Term Link )
orphaned process group ( Index Term Link )
process group ( Index Term Link )
process group leader ( Index Term Link )
process group lifetime ( Index Term Link )
process ID ( Index Term Link )
process lifetime ( Index Term Link )
session ( Index Term Link )
session ID ( Index Term Link )
session leader ( Index Term Link )
session lifetime ( Index Term Link )
SUSP character ( Index Term Link )
terminology ( Index Term Link ) ( Index Term Link )
TOSTOP flag ( Index Term Link )
K
kadb ( Index Term Link )
kernel data structures
ch_ops ( Index Term Link )
dev_ops ( Index Term Link )
modldrv ( Index Term Link )
modlinkage ( Index Term Link )
modlstrmod ( Index Term Link )
qinit ( Index Term Link )
streamtab ( Index Term Link )
/kernel/drv, loading device drivers ( Index Term Link )
/kernel/strmod, loading module ( Index Term Link )
kernel utilities ( Index Term Link )
adjmsg ( Index Term Link )
allocb ( Index Term Link )
backq ( Index Term Link )
bcanput ( Index Term Link )
bufcall ( Index Term Link )
canput ( Index Term Link )
copymsg ( Index Term Link )
datamsg ( Index Term Link )
dupb ( Index Term Link )
dupmsg ( Index Term Link )
enableok ( Index Term Link )
esballoc ( Index Term Link )
flushband ( Index Term Link )
flushq ( Index Term Link )
freeb ( Index Term Link )
freemsg ( Index Term Link )
freezestr ( Index Term Link )
getq ( Index Term Link )
linkb ( Index Term Link )
msgdsize ( Index Term Link )
noenable ( Index Term Link )
otherq ( Index Term Link )
pullupmsg ( Index Term Link )
putbq ( Index Term Link )
putctl ( Index Term Link )
putctl1 ( Index Term Link )
putnext ( Index Term Link )
putq ( Index Term Link )
qbufcall ( Index Term Link )
qprocsoff ( Index Term Link )
qprocson ( Index Term Link )
qreply ( Index Term Link )
qsize ( Index Term Link )
qtimeout ( Index Term Link )
qunbufcall ( Index Term Link )
quntimeout ( Index Term Link )
qwait ( Index Term Link )
qwait_sig ( Index Term Link )
qwriter ( Index Term Link )
RD ( Index Term Link )
rmvb ( Index Term Link )
rmvq ( Index Term Link )
strlog ( Index Term Link )
strqget ( Index Term Link )
strqset ( Index Term Link )
testb ( Index Term Link )
unbufcall ( Index Term Link )
unfreezestr ( Index Term Link )
unlinkb ( Index Term Link )
WR ( Index Term Link )
L
ldterm ( Index Term Link ) ( Index Term Link ) ( Index Term Link )
M_SETOPTS ( Index Term Link )
read-side messages ( Index Term Link )
write side ( Index Term Link )
LIFO, module add/remove ( Index Term Link )
line discipline module
close ( Index Term Link )
description ( Index Term Link )
in job control ( Index Term Link )
in pseudo-tty subsystem ( Index Term Link )
ioctl ( Index Term Link )
line discipline module for flush handling, example ( Index Term Link )
line printer driver
example ( Index Term Link )
header file declarations ( Index Term Link )
linkb ( Index Term Link )
linking messages ( Index Term Link )
list a stream's drivers and modules, example ( Index Term Link )
load kernel module, driver entry point ( Index Term Link )
loop-around driver flow control, example ( Index Term Link )
M
M_BREAK ( Index Term Link )
M_COPYIN ( Index Term Link )
M_COPYOUT ( Index Term Link )
transparent ioctl example ( Index Term Link )
with M_IOCTL ( Index Term Link )
M_COPYOUT using transparent ioctl, example ( Index Term Link )
M_CTL ( Index Term Link )
M_STOP ( Index Term Link )
SO_MREADOFF ( Index Term Link )
with line discipline module ( Index Term Link )
M_DATA ( Index Term Link )
M_DELAY ( Index Term Link )
M_ERROR ( Index Term Link )
M_FLUSH ( Index Term Link )
flags ( Index Term Link )
flush read and write queues ( Index Term Link )
flush read side of stream ( Index Term Link )
flush write side of stream ( Index Term Link )
FLUSHR ( Index Term Link )
FLUSHRW ( Index Term Link )
FLUSHW ( Index Term Link )
in module example ( Index Term Link )
packet mode ( Index Term Link )
M_FLUSH message handling, description ( Index Term Link )
M_HANGUP ( Index Term Link )
M_IOCACK ( Index Term Link )
with M_COPYOUT ( Index Term Link )
with M_IOCTL ( Index Term Link )
M_IOCDATA ( Index Term Link )
M_IOCDATA processing
example ( Index Term Link ) ( Index Term Link )
M_IOCNAK ( Index Term Link )
with M_COPYOUT ( Index Term Link )
with M_IOCTL ( Index Term Link )
M_IOCTL ( Index Term Link ) ( Index Term Link )
transparent ( Index Term Link )
with M_COPYOUT ( Index Term Link )
M_PASSFP ( Index Term Link )
M_PCPROTO ( Index Term Link )
M_PCRSE ( Index Term Link )
M_PCSIG ( Index Term Link )
M_PROTO ( Index Term Link ) ( Index Term Link )
M_READ ( Index Term Link )
M_RSE ( Index Term Link )
M_SETOPTS ( Index Term Link )
SO_FLAG ( Index Term Link )
SO_ISTTY ( Index Term Link )
so_readopt options ( Index Term Link )
M_SIG ( Index Term Link )
in signaling ( Index Term Link )
M_STOP ( Index Term Link )
M_STOPI ( Index Term Link )
M_UNHANGUP ( Index Term Link )
managing extended buffers in multithreaded environment, example ( Index Term Link )
manipulating modules ( Index Term Link )
master driver
in pseudo-tty subsystem ( Index Term Link )
open ( Index Term Link )
mdb ( Index Term Link )
memory-mapped I/O ( Index Term Link )
message ( Index Term Link )
accessing queue information ( Index Term Link )
allocation ( Index Term Link )
container for data and control information ( Index Term Link )
create priority band message ( Index Term Link )
data alignment ( Index Term Link )
definitions of priority band fields ( Index Term Link )
flow control ( Index Term Link )
freeing ( Index Term Link )
getmsg ( Index Term Link )
getpmsg ( Index Term Link )
high-priority ( Index Term Link ) ( Index Term Link )
linking ( Index Term Link )
M_BREAK ( Index Term Link ) ( Index Term Link )
M_COPYIN ( Index Term Link ) ( Index Term Link )
M_COPYOUT ( Index Term Link ) ( Index Term Link )
M_CTL ( Index Term Link ) ( Index Term Link ) ( Index Term Link )
M_DATA ( Index Term Link ) ( Index Term Link )
M_DELAY ( Index Term Link ) ( Index Term Link )
M_ERROR ( Index Term Link ) ( Index Term Link )
M_FLUSH ( Index Term Link ) ( Index Term Link )
M_HANGUP ( Index Term Link ) ( Index Term Link )
M_IOCACK ( Index Term Link ) ( Index Term Link )
M_IOCDATA ( Index Term Link ) ( Index Term Link )
M_IOCNAK ( Index Term Link ) ( Index Term Link )
M_IOCTL ( Index Term Link ) ( Index Term Link )
M_PASSFP ( Index Term Link ) ( Index Term Link )
M_PCPROTO ( Index Term Link ) ( Index Term Link )
M_PCRSE ( Index Term Link )
M_PCSIG ( Index Term Link ) ( Index Term Link )
M_PROTO ( Index Term Link ) ( Index Term Link )
M_READ ( Index Term Link ) ( Index Term Link )
M_RSE ( Index Term Link )
M_SETOPTS ( Index Term Link ) ( Index Term Link )
M_SIG ( Index Term Link )
M_START ( Index Term Link )
M_STARTI ( Index Term Link )
M_STOP ( Index Term Link )
M_STOPI ( Index Term Link ) ( Index Term Link )
M_UNHANGUP ( Index Term Link ) ( Index Term Link )
msgb structure ( Index Term Link ) ( Index Term Link )
priority ( Index Term Link )
putmsg ( Index Term Link )
putpmsg ( Index Term Link )
qband structure ( Index Term Link )
qinit structure ( Index Term Link )
queue ( Index Term Link ) ( Index Term Link )
queue priority ( Index Term Link )
queue structure ( Index Term Link )
queues ( Index Term Link ) ( Index Term Link )
read options ( Index Term Link )
recovering from allocation failure ( Index Term Link )
recovering from no buffers ( Index Term Link )
retrieve priority band message ( Index Term Link )
service interface ( Index Term Link )
shared data ( Index Term Link )
SO_MREADOFI ( Index Term Link )
translation between user application and kernel ( Index Term Link )
types ( Index Term Link )
using qband information ( Index Term Link )
write option ( Index Term Link )
message (STREAMS)
direction ( Index Term Link )
flow ( Index Term Link )
handled by pckt ( Index Term Link )
handled by ptem ( Index Term Link )
high-priority ( Index Term Link ) ( Index Term Link )
ldterm read side ( Index Term Link )
ldterm write side ( Index Term Link )
linking into queues ( Index Term Link )
M_DATA ( Index Term Link )
M_PCPROTO ( Index Term Link )
M_PROTO ( Index Term Link )
ordinary ( Index Term Link ) ( Index Term Link ) ( Index Term Link )
processing ( Index Term Link )
sending/receiving ( Index Term Link )
structures ( Index Term Link )
types ( Index Term Link )
message block ( Index Term Link )
message block structure, example ( Index Term Link )
message ordering ( Index Term Link )
message priorities ( Index Term Link )
message queue ( Index Term Link )
priority ( Index Term Link )
priority levels ( Index Term Link )
message types, rules for changing ( Index Term Link )
messages, kernel ( Index Term Link )
messages sent by driver to stream head
M_ERROR ( Index Term Link )
M_HANGUP ( Index Term Link )
M_SIG/M_PCSIG ( Index Term Link )
modldrv structure, driver operations and linkage information ( Index Term Link )
modlinkage structure
module link information ( Index Term Link )
revision level of loadable modules ( Index Term Link )
modlstrmod structure, module operations and linkage information ( Index Term Link )
module ( Index Term Link )
difference with driver ( Index Term Link )
draining ( Index Term Link )
ioctl control ( Index Term Link )
line discipline ( Index Term Link )
manipulation ( Index Term Link )
pushable ( Index Term Link )
reusability ( Index Term Link )
module entry point structure, example ( Index Term Link )
module_info structure, example ( Index Term Link )
module information structure, example ( Index Term Link )
module put, example ( Index Term Link )
module service procedure, example ( Index Term Link )
module unloading, outstanding esballoc callback ( Index Term Link )
monitor streams events ( Index Term Link )
msgb structure ( Index Term Link )
msgdsize ( Index Term Link )
MT SAFE
cb_flag for driver ( Index Term Link )
driver ( Index Term Link )
f_flag for module ( Index Term Link )
module ( Index Term Link )
multiple process write, same pipe ( Index Term Link )
multiplexer ( Index Term Link )
building ( Index Term Link ) ( Index Term Link )
controlling stream ( Index Term Link )
data routing ( Index Term Link )
declarations ( Index Term Link )
definition ( Index Term Link )
design guidelines ( Index Term Link )
dismantling ( Index Term Link )
driver ( Index Term Link ) ( Index Term Link )
example ( Index Term Link ) ( Index Term Link )
lower ( Index Term Link )
lower connection ( Index Term Link ) ( Index Term Link )
lower disconnection ( Index Term Link )
lower read put procedure ( Index Term Link ) ( Index Term Link )
lower stream ( Index Term Link ) ( Index Term Link )
lower write service procedure ( Index Term Link )
lower write service procedure ( Index Term Link )
minor device connect ( Index Term Link )
minor device disconnect ( Index Term Link )
pseudo-device driver ( Index Term Link )
upper ( Index Term Link )
upper-queue write put procedure ( Index Term Link )
upper stream ( Index Term Link ) ( Index Term Link )
upper write service procedure ( Index Term Link )
multiplexer ID
in multiplexer building ( Index Term Link )
in multiplexer dismantling ( Index Term Link )
multiplexing STREAMS ( Index Term Link )
multithread framework
MT SAFE ( Index Term Link )
perimeters ( Index Term Link )
multithreaded kernel ( Index Term Link )
porting to ( Index Term Link )
multithreaded module
explicit locks ( Index Term Link )
explicit locks, constraints ( Index Term Link )
preserving message ordering ( Index Term Link )
multithreaded perimeter
choosing a type ( Index Term Link )
defining a type ( Index Term Link )
description ( Index Term Link )
exclusive/shared access flags ( Index Term Link )
flags ( Index Term Link )
fully-hot ( Index Term Link )
inner ( Index Term Link )
inner perimeter flags ( Index Term Link )
outer ( Index Term Link )
outer perimeter flags ( Index Term Link )
PERMOD ( Index Term Link )
routines used inside a perimeter ( Index Term Link )
multithreaded STREAMS, concepts and terminology ( Index Term Link )
multithreaded STREAMS module with outer perimeter, example ( Index Term Link )
multithreaded STREAMS pseudo-driver using an inner perimeter, example ( Index Term Link )
muxuwput, upper-queue write put procedure ( Index Term Link )
N
named pipe (see FIFO) ( Index Term Link )
named stream
description ( Index Term Link )
file descriptor passing ( Index Term Link )
noenable ( Index Term Link )
nontransparent ioctl using I_STR, example ( Index Term Link )
NSTRPUSH
kernel parameter ( Index Term Link )
tunable parameter ( Index Term Link )
O
O_NDELAY, with M_SETOPTS ( Index Term Link )
O_NONBLOCK, with M_SETOPTS ( Index Term Link )
open ( Index Term Link )
device file ( Index Term Link )
open a module, example ( Index Term Link )
open a stream ( Index Term Link )
open and request bind to the driver device, example ( Index Term Link )
opening a system clone device, example ( Index Term Link )
opening the log driver, example ( Index Term Link )
opening the loop-around driver ( Index Term Link )
ordinary message
M_BREAK ( Index Term Link )
M_CTL ( Index Term Link )
M_DATA ( Index Term Link )
M_DELAY ( Index Term Link )
M_IOCTL ( Index Term Link )
M_PASSFP ( Index Term Link )
M_PROTO ( Index Term Link )
M_RSE ( Index Term Link )
M_SETOPTS ( Index Term Link )
otherq ( Index Term Link )
P
packet mode ( Index Term Link )
description ( Index Term Link )
messages ( Index Term Link )
panic ( Index Term Link )
pckt ( Index Term Link ) ( Index Term Link )
perimeter
asynchronous access ( Index Term Link )
asynchronous callback functions ( Index Term Link )
choosing a type ( Index Term Link )
defining a type ( Index Term Link )
description ( Index Term Link )
exclusive/shared access flags ( Index Term Link )
flags ( Index Term Link )
fully-hot ( Index Term Link )
inner ( Index Term Link )
inner perimeter flags ( Index Term Link )
outer ( Index Term Link )
outer perimeter flags ( Index Term Link )
PERMOD ( Index Term Link )
routines ( Index Term Link )
synchronous access ( Index Term Link )
persistent link ( Index Term Link ) ( Index Term Link )
create ( Index Term Link )
dismantle ( Index Term Link )
PIPE_BUF ( Index Term Link )
pipe or FIFO
read from ( Index Term Link )
write to ( Index Term Link )
pipemod, module ( Index Term Link )
pipemod STREAMS module ( Index Term Link )
pipes, STREAMS (see STREAMS-based pipe) ( Index Term Link )
poll ( Index Term Link )
poll event
POLLIN ( Index Term Link )
POLLOUT ( Index Term Link )
POLLRDBAND ( Index Term Link )
POLLRDNORM ( Index Term Link )
POLLWRBAND ( Index Term Link )
POLLWRNORM ( Index Term Link )
pollfd structure ( Index Term Link )
polling
asynchronous input/output ( Index Term Link )
error events ( Index Term Link )
event ( Index Term Link )
example ( Index Term Link ) ( Index Term Link )
porting from SunOS 4 to SunOS 5, considerations ( Index Term Link )
priority band data
ioctl ( Index Term Link )
routines ( Index Term Link )
priority band data flush handling, example ( Index Term Link )
private data ( Index Term Link )
private locks across calls, module ( Index Term Link )
process incoming data, example ( Index Term Link )
process write message blocks, example ( Index Term Link )
processing an ioctl, example ( Index Term Link )
processing an ioctl message, example ( Index Term Link )
processing input, example ( Index Term Link )
protocol
migration ( Index Term Link )
portability ( Index Term Link )
substitution ( Index Term Link )
protocol daemon, example ( Index Term Link )
protocol messages, read ( Index Term Link )
pseudo-device, driver ( Index Term Link )
pseudo-terminal, subsystem ( Index Term Link )
pseudo-terminal subsystem, remote mode ( Index Term Link )
pseudo-tty emulation module ( Index Term Link ) ( Index Term Link )
pseudo-tty subsystem ( Index Term Link )
description ( Index Term Link ) ( Index Term Link )
drivers ( Index Term Link ) ( Index Term Link )
ldterm ( Index Term Link )
messages ( Index Term Link )
packet mode ( Index Term Link )
remote mode ( Index Term Link )
ptem ( Index Term Link ) ( Index Term Link )
ptem structure, example ( Index Term Link )
ptm (see master driver) ( Index Term Link )
pts, example ( Index Term Link )
pts (see slave driver) ( Index Term Link )
ptsname ( Index Term Link ) ( Index Term Link )
with pseudo-tty driver ( Index Term Link )
pullupmsg ( Index Term Link )
push/pop modules on/off the stream ( Index Term Link )
pushing a module, example ( Index Term Link )
pushing modules on a STREAMS-based FIFO ( Index Term Link )
pushing modules on a STREAMS-based pipe ( Index Term Link )
put procedure ( Index Term Link ) ( Index Term Link ) ( Index Term Link )
putbq ( Index Term Link )
putctl ( Index Term Link )
putctl1 ( Index Term Link )
putnext ( Index Term Link ) ( Index Term Link )
putq ( Index Term Link )
Q
q_next field ( Index Term Link )
qband structure, example ( Index Term Link )
qbufcall ( Index Term Link ) ( Index Term Link )
qinit structure
example ( Index Term Link )
pointers to STREAMS entry points ( Index Term Link )
qprocsoff ( Index Term Link ) ( Index Term Link )
qprocson ( Index Term Link ) ( Index Term Link )
qreply ( Index Term Link )
qsize ( Index Term Link )
qtimeout ( Index Term Link ) ( Index Term Link )
queue ( Index Term Link ) ( Index Term Link ) ( Index Term Link )
flags ( Index Term Link )
put ( Index Term Link )
read ( Index Term Link )
read side ( Index Term Link )
schedule ( Index Term Link )
using qband information ( Index Term Link )
water mark ( Index Term Link )
write ( Index Term Link )
write side ( Index Term Link )
queue allocation ( Index Term Link )
queue flags
QENAB ( Index Term Link )
QFULL ( Index Term Link )
QNOENB ( Index Term Link )
QREADR ( Index Term Link )
QUSE ( Index Term Link )
QWANTR ( Index Term Link )
QWANTW ( Index Term Link )
queue processing entry point
STREAMS driver ( Index Term Link ) ( Index Term Link )
queue processing entry points, example ( Index Term Link )
queue processing procedure
put ( Index Term Link )
service ( Index Term Link )
queue structure, example ( Index Term Link )
qunbufcall ( Index Term Link ) ( Index Term Link ) ( Index Term Link )
quntimeout ( Index Term Link ) ( Index Term Link )
qwait ( Index Term Link ) ( Index Term Link )
qwait_sig ( Index Term Link )
qwriter ( Index Term Link ) ( Index Term Link )
R
RD ( Index Term Link )
read side, ldterm processing ( Index Term Link )
read-side, put procedure ( Index Term Link )
read-side line discipline module, example ( Index Term Link )
read-side put procedure, example ( Index Term Link )
receive data from service provider
example ( Index Term Link ) ( Index Term Link )
releasing callback requests ( Index Term Link )
retrieve priority band message ( Index Term Link )
revents, bitmask ( Index Term Link )
rmvb ( Index Term Link )
rmvq ( Index Term Link )
routines used inside a perimeter ( Index Term Link )
S
sad ( Index Term Link )
SAD (see STREAMS Administrative Driver) ( Index Term Link ) ( Index Term Link ) ( Index Term Link )
SAD_GAP ioctl ( Index Term Link )
SAD_SAP ioctl
SAP_ALL option ( Index Term Link )
SAP_CLEAR option ( Index Term Link )
SAP_ONE option ( Index Term Link )
SAP_RANGE option ( Index Term Link )
sap_lastminor device ( Index Term Link )
sap_major device ( Index Term Link )
sap_minor device ( Index Term Link ) ( Index Term Link )
send data to service provider, example ( Index Term Link )
service
interface ( Index Term Link )
procedure ( Index Term Link )
provider ( Index Term Link )
user ( Index Term Link )
service interface ( Index Term Link )
service interface ( Index Term Link )
definition ( Index Term Link )
rules ( Index Term Link )
service interface library
example ( Index Term Link )
primitives ( Index Term Link )
service interface library header file, example ( Index Term Link )
service interface protoput procedure, example ( Index Term Link )
service primitive ( Index Term Link )
BIND_REQ ( Index Term Link )
ERROR_ACK ( Index Term Link )
in service procedure ( Index Term Link )
OK_ACK ( Index Term Link )
UNITDATA_IND ( Index Term Link )
UNITDATA_REQ ( Index Term Link )
service primitive declarations, example ( Index Term Link )
service procedure ( Index Term Link )
service procedure ( Index Term Link ) ( Index Term Link )
back-enable ( Index Term Link )
blocked ( Index Term Link )
service provider ( Index Term Link )
accessing ( Index Term Link )
closing ( Index Term Link )
receiving data ( Index Term Link )
sending data ( Index Term Link )
signal ( Index Term Link )
extended ( Index Term Link )
in job control management ( Index Term Link )
in STREAMS ( Index Term Link ) ( Index Term Link )
M_SIG ( Index Term Link )
SIGCONT ( Index Term Link )
SIGHUP ( Index Term Link )
SIGPOLL ( Index Term Link )
SIGSTOP ( Index Term Link )
SIGTSTP ( Index Term Link )
SIGTTIN ( Index Term Link )
SIGTTOU ( Index Term Link )
SIGPOLL, signal ( Index Term Link )
SIGTTIN ( Index Term Link )
SIGTTOU ( Index Term Link )
simple stream, example ( Index Term Link )
slave driver ( Index Term Link )
in pseudo-tty subsystem ( Index Term Link )
open ( Index Term Link )
slave driver open, example ( Index Term Link )
SO_FLAG, in M_SETOPTS ( Index Term Link )
SO_MREADOFF ( Index Term Link )
SO_MREADOFI ( Index Term Link )
standard pipe ( Index Term Link )
str_mlist structure, example ( Index Term Link )
strace ( Index Term Link )
strapush structure, example ( Index Term Link )
strchg ( Index Term Link )
strconf command ( Index Term Link )
STRCTLSZ, tunable parameter ( Index Term Link )
stream
controlling terminal ( Index Term Link )
general definition ( Index Term Link )
hung-up ( Index Term Link )
stream autopush structure, example ( Index Term Link )
stream construction
add/remove modules ( Index Term Link )
close a stream ( Index Term Link )
example ( Index Term Link ) ( Index Term Link )
open a stream ( Index Term Link )
stream head
copy data between the user space and kernel space ( Index Term Link )
intercepting I_STR ( Index Term Link )
kernel space interaction ( Index Term Link )
stream pseudo terminal module, example ( Index Term Link )
streamio ioctl commands, streams control ( Index Term Link )
STREAMS ( Index Term Link )
administration tools ( Index Term Link )
application interface ( Index Term Link )
asynchronous callback functions ( Index Term Link )
closing a device ( Index Term Link )
configuration ( Index Term Link ) ( Index Term Link )
considerations when porting from SunOS 4 to SunOS 5 ( Index Term Link )
data path ( Index Term Link )
data transfer ( Index Term Link )
definition ( Index Term Link )
definition of functionality ( Index Term Link )
determining when to use ( Index Term Link )
device driver ( Index Term Link )
driver ( Index Term Link )
flow control ( Index Term Link ) ( Index Term Link )
frequently asked IP interface questions ( Index Term Link )
hardened ( Index Term Link ) ( Index Term Link ) ( Index Term Link )
hardening advice ( Index Term Link ) ( Index Term Link )
head ( Index Term Link ) ( Index Term Link )
interface ( Index Term Link )
kernel-level ( Index Term Link )
message components ( Index Term Link )
message data structures ( Index Term Link )
message queue priority ( Index Term Link )
message queues ( Index Term Link )
message types ( Index Term Link )
messages ( Index Term Link )
module ( Index Term Link ) ( Index Term Link )
module multiplexing ( Index Term Link )
multiplexing ( Index Term Link ) ( Index Term Link )
multithread framework ( Index Term Link )
multithread framework integrity ( Index Term Link )
opening a device ( Index Term Link )
polling ( Index Term Link )
programming model ( Index Term Link )
queue overview ( Index Term Link )
tunable parameters ( Index Term Link )
STREAMS administration modules ( Index Term Link )
autopush facility ( Index Term Link )
STREAMS Administrative Driver ( Index Term Link ) ( Index Term Link ) ( Index Term Link ) ( Index Term Link )
STREAMS anchors client, example ( Index Term Link )
STREAMS anchors server, example ( Index Term Link )
STREAMS-based pipe ( Index Term Link )
atomic write ( Index Term Link )
basic operations ( Index Term Link )
definition ( Index Term Link )
PIPE_BUF ( Index Term Link )
STREAMS-based pseudo-terminal subsystem (see pseudo-tty subsystem) ( Index Term Link )
STREAMS-based terminal subsystem (see tty subsystem) ( Index Term Link )
streams control, streamio ioctl commands ( Index Term Link )
STREAMS debugging ( Index Term Link )
error and trace logging ( Index Term Link ) ( Index Term Link ) ( Index Term Link )
kernel debug printing ( Index Term Link )
kernel examination tools ( Index Term Link )
STREAMS driver
cloning ( Index Term Link )
configuration ( Index Term Link )
configuration entry point ( Index Term Link ) ( Index Term Link )
design guidelines ( Index Term Link )
driver interrupt ( Index Term Link )
Ethernet drivers ( Index Term Link )
flush handling ( Index Term Link )
initialization entry point ( Index Term Link )
interrupt handler ( Index Term Link )
ioctl ( Index Term Link ) ( Index Term Link )
loop-around ( Index Term Link )
porting to multithreaded kernel ( Index Term Link )
pseudo-tty ( Index Term Link ) ( Index Term Link )
pseudo-tty subsystem master ( Index Term Link )
pseudo-tty subsystem slave ( Index Term Link )
queue processing entry point ( Index Term Link ) ( Index Term Link )
table-driven entry point ( Index Term Link )
STREAMS module ( Index Term Link ) ( Index Term Link )
adding an anchor ( Index Term Link )
anchor lock ( Index Term Link )
autopush facility ( Index Term Link ) ( Index Term Link )
autopush facility ( Index Term Link )
connld ( Index Term Link )
design guidelines ( Index Term Link )
filter ( Index Term Link )
flow control ( Index Term Link ) ( Index Term Link )
ioctl ( Index Term Link )
line discipline ( Index Term Link )
ptem ( Index Term Link )
read-side put procedure ( Index Term Link )
routines ( Index Term Link ) ( Index Term Link )
service interface example ( Index Term Link ) ( Index Term Link )
service procedure ( Index Term Link )
service procedure example ( Index Term Link )
write-side put procedure ( Index Term Link )
STREAMS queue
qband structure ( Index Term Link )
using qband information ( Index Term Link )
using queue information ( Index Term Link )
streamtab structure
driver entry point ( Index Term Link )
example ( Index Term Link )
pointers to structures for inititializing reading and writng a module ( Index Term Link )
strerr ( Index Term Link )
strioctl structure ( Index Term Link )
example ( Index Term Link )
ic_cmd ( Index Term Link )
ic_dp ( Index Term Link )
ic_len ( Index Term Link )
ic_timout ( Index Term Link )
strlog ( Index Term Link ) ( Index Term Link )
flag parameter ( Index Term Link )
STRMSGSZ, tunable parameter ( Index Term Link )
stropts.h, strbuf ( Index Term Link )
strqget ( Index Term Link ) ( Index Term Link ) ( Index Term Link )
strqset ( Index Term Link ) ( Index Term Link ) ( Index Term Link )
structure for M_IOCTL unrecognized message, example ( Index Term Link )
structure for nontransparent ioctl, example ( Index Term Link )
synchronous input/output, in polling ( Index Term Link )
system crash ( Index Term Link )
T
table-driven entry point, STREAMS driver ( Index Term Link )
termio
default flag values ( Index Term Link )
TCSETA ( Index Term Link )
TCSETAF ( Index Term Link )
TCSETAW ( Index Term Link )
termios, terminal control flags ( Index Term Link )
testb ( Index Term Link )
timeout ( Index Term Link )
transferring user buffer into the kernel, example ( Index Term Link )
transparent ioctl ( Index Term Link )
example ( Index Term Link )
M_COPYOUT example ( Index Term Link )
messages ( Index Term Link )
processing ( Index Term Link )
transparent ioctl processing ( Index Term Link )
treatment of protocol messages
RPROTDAT ( Index Term Link )
RPROTDIS ( Index Term Link )
RPROTMASK ( Index Term Link )
RPROTNORM ( Index Term Link )
tty subsystem
benefits ( Index Term Link )
description ( Index Term Link ) ( Index Term Link )
hardware emulation module ( Index Term Link ) ( Index Term Link )
ldterm ( Index Term Link )
setup ( Index Term Link )
ttymon ( Index Term Link )
tunable parameters, STREAMS ( Index Term Link )
U
unbufcall ( Index Term Link )
unfreezestr ( Index Term Link )
unique connection (STREAMS) ( Index Term Link ) ( Index Term Link )
unlinkb ( Index Term Link )
unlockpt ( Index Term Link )
with pseudo-tty driver ( Index Term Link )
upstream ( Index Term Link )
user process write, 0 byte pipe ( Index Term Link )
user's options structure, example ( Index Term Link )
W
wait for bind request acknowledgement, example ( Index Term Link )
WR ( Index Term Link )
write side, ldterm ( Index Term Link )
write-side, put procedure ( Index Term Link )
write-side put procedure, example ( Index Term Link )