STREAMS(4) | FreeBSD Kernel Interfaces Manual (i386) | STREAMS(4) |
名称
streams — System V STREAMS ネットワーク ABI のサポート書式
この ABI のサポートをカーネルにコンパイルするためには、次の行を利用者のカーネル設定ファイルに置きます:
device streams
もう一つの方法として、ブート時にモジュールとして ABI をロードするためには、次の行を loader.conf(5) に置きます:
streams_load="YES"
解説
streams モジュールはユーザランドアプリケーションのために制限された System V Release 4 STREAMS プロセス間通信 ABI (アプリケーションバイナリインタフェース) 互換性を提供します。内部的に、 streams は、ソケット作成カーネルルーチンを使用して STREAMS ハンドルを提供し、 svr4(4) の STREAMS エミュレーションコードで操作が許されたソケットに状態を追跡する情報を加えます。したがって、stream デバイスをオープンすると、 socket(2) の呼び出しによって得られるものと同様の結果が生成されます。
アプリケーションは決してこのインタフェースを直接使うべきではありません: STREAMS エミュレーションは svr4(4) がクライアントバイナリに提示する必要がある SVR4 環境において ABI 要件をサポートするためのサービスとして提供されるだけです。
関連項目
svr4(4)歴史
System V Release 4 ABI サポートは FreeBSD 4.0 ではじめて登場しました。 ABI は Christos Zoulas によって書かれた NetBSD 1.3 に存在する同等な機能から移植されました。バグ
この全体のインタフェースはソケット上のエミュレーションを通して STREAMS セマンティクスを生産する粗野なハッキングです。BSD アプリケーションに SVR4 STREAMS サービスを提供するためにこのインタフェースを使用することができるのを望んでいるプログラマはひどく失望するでしょう。
March 17, 2008 | FreeBSD |