Linux STREAMS Package CONTENTS This package gives UNIX(TM) SVR4 compatible STREAMS capability to the Linux system. It consists of the following parts: 1) A patch for the kernel (currently 2.0.24-33) that allows the STREAMS executive to be compiled into the kernel directly or as a module. See README.PATCH. 2) A patch for the kernel for the STREAMS executive itself, see README.PATCH. 3) A few test utility programs for testing STREAMS features and running performance tests, see README.TEST. 4) A set of include files a few of which are useful to include in application programs, see README.INCL. 5) A method for installing binary drivers into the kernel at kernel- build time as well as sample STREAMS drivers in source code form, see README.DRVRS. 6) Some debugging aids for STREAMS drivers, see README.DEBUG. REFERENCE STREAMS is too large a topic for me to try to document in these README files. There has been quite a bit written on the subject. Here are some suggested books that you might look at to learn more about STREAMS. The best references to have are "The Magic Garden Explained" (Prentice-Hall) and "UNIX System V Network Programming (Addison Wesley). The former describes the implementation of Unixware SVR4.2, while the latter has excellent coverage of writing STREAMS drivers and modules, DLPI and TPI, etc. It includes a sample Ethernet driver, SLIP driver, TTY module (simplified ldterm), and a TPI multiplexor. Two other highly technical reference works are "UNIX SYSTEM V RELEASE 4 Programmer's Guide: STREAMS" (Prentice Hall, ISBN 0-13-947003-4) and "UNIX SYSTEM V RELEASE 4 Device Driver Interface/Driver-Kernel Interface (DDI/DKI) Reference Manual" (Prentice Hall, ISBN 0-13-957531-6). The STREAMS Guide contains definitive reference material on drivers, messages, queues, etc. The DDI/DKI contains driver entry point definitions and definitions of kernel routines that can be called from STREAMs drivers. It is best to obtain both of these and familarize yourself with them before attempting to write your first STREAMS driver. Licensing issues are covered in the file LICENSE and LICENSE.README. David Grothe <dave@gcom.com> Mikel Matthews <mikel@gcom.com>