Sun Microsystems Logo
Products and Services
 
Support and Training
 
 

STREAMS Programming Guide
Copyright
Expand TOC  Preface

Part I Application Programming Interface
Expand TOC  1.  Overview of STREAMS
Expand TOC  2.  STREAMS Application-Level Components
Expand TOC  3.  STREAMS Application-Level Mechanisms
Expand TOC  4.  Application Access to the STREAMS Driver and Module Interfaces
Expand TOC  5.  STREAMS Administration
Expand TOC  6.  Pipes and Queues

Part II Kernel Interface
Expand TOC  7.  STREAMS Framework - Kernel Level
Expand TOC  8.  STREAMS Kernel-Level Mechanisms
Expand TOC  9.  STREAMS Drivers
Expand TOC  10.  STREAMS Modules
Expand TOC  11.  Configuring STREAMS Drivers and Modules
Collapse TOC  12.  Multithreaded STREAMS
Multithreaded (MT) STREAMS Overview
MT STREAMS Framework
STREAMS Framework Integrity
Message Ordering
MT STREAMS Perimeters
Inner Perimeters
Outer Perimeters
PERMOD Perimeter
Hot Perimeters
Defining Perimeter Types
Choosing a Perimeter Type
MT SAFE Modules and Drivers
MT SAFE Module
MT SAFE Driver
Routines Used Inside a Perimeter
qprocson/qprocsoff
qtimeout/qunbufcall
qwriter
qwait
Asynchronous Callback Functions
close() Race Conditions
Unloading a Module that Uses esballoc
Use of the q_next Field
MT SAFE Modules Using Explicit Locks
Constraints When Using Locks
Preserving Message Ordering
Preparing to Port
Porting to the SunOS 5 System
Sample Multithreaded Device Driver Using a Per Module Inner Perimeter
Sample Multithreaded Module With Outer Perimeter
Expand TOC  13.  STREAMS Multiplex Drivers

Part III Advanced Topics
Expand TOC  14.  Debugging STREAMS-based Applications

Part IV Appendixes
Expand TOC  A.   Message Types
Expand TOC  B.   Kernel Utility Interface Summary
Expand TOC  C.   STREAMS-Based Terminal Subsystem
Expand TOC  D.   STREAMS FAQ
Expand TOC  Glossary
Expand TOC  Index