STREAMS/UX for the HP 9000 Reference Manual
35
Differences Between STREAMS/UX and System V Release 4 STREAMS
HP-UX Changes to STREAMS/UX System Calls
There are HP-UX modifications to the fattach, ioctl, pipe, poll, putmsg,
putpmsg, select, signal, write, and writev system calls. These modifications
are as follows.
fattach Modifications
STREAMS/UX supports the fattach(3) and fdetach(3) library calls and the
fdetach(1m) command as described in the UNIX SVR4.2 Operating System
API Reference and the SVR4.2 Command Reference. In order to use fattach
and fdetach, the kernel must have the ffs file system configured. ffs is added
to the /stand/system file when STREAMS/UX is installed using swinstall. If
ffs has been deleted after the install was done, re-include it as follows,
regenerate a kernel, and reboot the system.
ffs
ioctl Modifications
STREAMS/UX supports ioctl as described in the SVR4.2 STREAMS
manual.
Also, note that the multiplexor ID number returned by I_LINK and
I_PLINK is a memory address, not a small integer such as 0, 1, 2, 3.
pipe Modifications
STREAMS/UX supports STREAMS-based pipes as an optional feature.
STREAMS/UX's STREAMS-based pipes behave as described in the UNIX
SVR4.2 Operating System API Reference and the UNIX System V Release 4
Programmer's Guide: STREAMS.
By default, pipes created by the pipe(2) system call are not
STREAMS-based. In order to get STREAMS-based pipes, the
/stand/system file must have the pipemod and pipedev module and driver
configured, and the tunable parameter streampipes must be set to 1 (one).
When STREAMS/UX is installed, the /stand/system file is modified to
include pipemod and pipedev, but streampipes is set to zero by default. The
kernel must be regenerated and the system rebooted if the setting of
streampipes to non-zero is to take effect. In other words, adb'ing the running
system to turn streampipes on will have no effect on the type of pipes
created by pipe(2). Once the kernel is regenerated and rebooted, all pipe(2)