パイプとストリームの違いは何ですか?

パイプとストリームの違いは何ですか?

パイプとストリームについて読みましたが、実装方法はまだ混乱しています。

プログラムは、キーボードがデータを送信する「標準入力」ストリーム(stdin)からデータを開始して読み取ります。

私の質問はパイプとどう違うのですか?パイプを使用すると、あるプロセスがパイプにデータを送信し、別のプロセスがパイプからデータを読み取ることができます。

キーボードを押すと、データが標準入力に転送され、プログラムは同じストリームからデータを読み込みます。

データがストリームに送信されると、パイプのように「読み取り」操作が実行されます。

このストリームはパイプで接続されていますか?

ベストアンサー1

UnixターミナルI / Oは伝統的に一種のI / Oとして実装されていました。待ち行列。以前のカーネルはclistを使用します。 V8 Unixの使用小川。ほとんどの場合、clistとストリームは、ユーザープロセス(特にファイル記述子)とキャラクタデバイスドライバ(シリアルポートやptysなど)間の部分リンクを実装するために使用されます。

パイプもキューですが、ユーザープロセス(特にファイル記述子のペア)を接続します。パイプは、ソケット、特殊タイプのファイル、さらにはSTREAMS(STREAMSはV8ストリームの派生物)など、さまざまな方法で実装できます。

したがって、ストリームとパイプはどちらもキューの実装ですが、使い方が異なります。

おすすめ記事