パイプ (コンピュータ)
このようにパイプで繋ぐ事を繰り返すことで、複雑な処理を小さくシンプルなソフトウエア群の数珠繋ぎで実現しようとするものである。パイプで連結することを前提とした構成のプログラムをフィルタとも呼ぶ。
直接の親子関係にあるプロセス間で通信をおこなうためfork前にあらかじめ共有しておく「無名パイプ」と、親子関係にないプロセス間で一時ファイルにディレクトリエントリする(接続自体はファイルを経由するわけではない)「名前付きパイプ」がある。ダグラス・マキルロイがUnixシェル向けに考案したことから始まり、パイプライン輸送からの連想で名付けられた。
特に、シェルなどでは縦棒( | )の記号を使って無名パイプを簡単に利用でき、それを指して「パイプ」と言うことも多い。プロセス群の標準ストリームを連鎖的に相互接続するもので、あるプロセスの標準出力 (stdout) を直接別のプロセスの標準入力 (stdin) に接続する。
前述のシェルのコマンドラインにおけるパイプは、中置記法で結合法則を満たす演算子と見ることができる(その時、演算子(オペレータ)のオペランドにあたるのは、各プログラムである)。これを一種の「合成」と見ることもできる。
MS-DOSにおけるパイプは、シングルタスクOSという制約のためパイプの動作は中間ファイルによってエミュレートされており、単なる略記法である。