streams & sockets (Re: Creating a socket with ISC's libinet.a)
Hwa Jin Bae
hwajin at ganges.wrs.com
Thu Jan 18 10:22:10 AEST 1990
In article <404 at zok.UUCP> mark at zok.UUCP (Mark W. Snitily) writes:
I'm rather comfortable with sockets but know very little about streams.
What references (books/journals/source code) would people out there
recommend for learning about streams for the first time?
The STREAMS has no conceptual resemblance to sockets. It is a kernel
facility that lets you build device drivers and individual modules
that can be used to implement various system level functions. It contains
a well defined collection of functions that can be used to manage
bidirectional queues of messages and defines a structure of the software
implementation of STREAMS conforming drivers and modules. For example,
I've written varous network interface STREAMS drivers for the Motorola System
V Unix for their Delta-series machines that get I_LINK'ed below a multiplexing
IP protocol STREAMS module (actually a driver). It is a nice model for
implementing modular pieces of software in the kernel. [There are a couple
individual acquaintences of mine who have implemented a user level hook
into the kernel STREAMS mechanism so that you can actually develop a STREAMS
driver/module at the user level before putting it into the kernel, which
makes the development process go much easier.]
The socket mechanism is a programmer interface to the Berkeley based
networking protocol implementation. AT&T defines a different programmer
interface called TLI which resembles the semantics of OSI protocol services.
You can actually write a program that uses TCP sockets on a Sun workstation
and another program that uses TCP TLI end-points on a 386 Unix box and
have them talk to each other without any problems, for example.
AT&T and Prentice Hall publishes a set of documents for both TLI and
STREAMS. Call your local Unix bookstores. They'll have both a
"STREAMS primer" and "STREAMS programmer's guide" as well as a
"network programmers guide".
I guess I hear too many people confuse STREAMS with TLI thesedays and
thus have the occasional urge to elaborate the redundant details.
--
hwajin at wrs.com
Wind River Systems
415/428-2623
More information about the Comp.unix.i386
mailing list