---
name: "streams"
section: "4"
platform: "linux"
package: "freebsd-manpages"
version: "6.0-5"
release: "Debian 4.0 (Etch)"
platforms: ["linux"]
url: "https://new.carta.tech/streams"
---

# streams(4)

System V STREAMS networking ABI support

## NAME

**streams** – System V STREAMS networking ABI support

## SYNOPSIS

To link System V Release 4 (SVR4) STREAMS interprocess communication ABI support into the kernel: **device** **streams**

To load the SVR4 STREAMS interprocess communication ABI support kernel module:

```
kldload streams
```

## DESCRIPTION

The **streams** module provides limited System V Release 4 STREAMS interprocess communication ABI (application binary interface) compatibility for userland applications.

Internally, **streams** provides STREAMS handles by using socket creation kernel routines, and adding state-tracking information to the socket to permit manipulation by STREAMS emulation code in [svr4(4)](/svr4/4.md). Hence, opening a stream device produces a result similar to what would be obtained by calling [socket(2)](/socket/2.md).

Applications should never use this interface directly: STREAMS emulation is only provided as a service to support ABI requirements in the SVR4 environment which [svr4(4)](/svr4/4.md) needs to present to client binaries.

## SEE ALSO

[svr4(4)](/svr4/4.md)

## HISTORY

System V Release 4 ABI support first appeared in FreeBSD 4.0. The ABI was ported from an equivalent facility present in NetBSD 1.3 written by Christos Zoulas.

## BUGS

This whole interface is a crude hack to produce STREAMS semantics through emulation over sockets.

Programmers who hope to be able to use this interface to provide SVR4 STREAMS services to BSD applications will be sorely disappointed.
