FIFOパイプラインはファイルタイプです。Linux上でのFIFOの作成は非常に簡単です。FIFOファイル固有のパイプライン特性がありますが、パイプラインとは若干の違いがあります。そして、あなたが詳細な理解を持つように、詳細な紹介を使います。また、プロセス間通信のためのLinuxシステムであって、名前付きパイプ(名前付きパイプ)と呼ば
ログイン
FIFOは、方法です。
FIFOとパイプの違いは次のとおりです。
FIFOにはファイルシステム内に対応するiノードがあります。これはlsコマンドで確認できます。
sh-3.2#ls -lhF。 /fifo_file
100 prwxrwxrwx 1ルートルート0 1970年1月1日。 /fifo_file |
sh-3.2#
名前が付いているからといって、どのプロセスからもアクセスできます。そのため、2つのプロセス間の通信にFIFOを使用できます。
pipeには名前がなく、既存のファイルシステムでは見ることができません。
親子プロセスや兄弟プロセスなど、血縁関係を持つプロセス間通信にのみ使用できます。
FIFOを作成する方法は次のとおりです。
1. umaskシステムコールを呼び出して、ファイルを作成するためのアクセス権を設定します。
#include "sys /types.h"
#include "sys /stat /h"
mode_t umask(mode_t mask);
2. unlinkシステムコールを呼び出して既存のfifoを削除します。
#include "unistd.h"
int unlink(const char *パス名);
3. mkfifoライブラリ関数を呼び出してFIFOファイルを作成します。
#include sys /types.h》
#include "sys /stat.h"
int mkfifo(const char *パス名、mode_tモード);
またはmknodシステムを呼び出してパラメータモードをS_IFIFOとして呼び出して指定することで、FIFOファイルを作成することもできます。
#include "sys /types.h"
#include "sys /stat.h"
#include《 fcntl.h》
#include "unistd.h"
int mknod(const char *パス名、mode_tモード、dev_t dev);
注意:< Br> 1。通信にFIFOを使用し、転送される各データはPIPE_BUFに制限されるべきです。
2. FIFOへのアクセスは通常のファイルへのアクセスに似ています。オープン/リード/ライト/クローズなどを使用できます。アクセスするためのシステムコールが行われます。
FIFOを使用するアプリケーションは次のとおりです。
1.単純なプロデューサ/コンシューマの問題、1つのプロセスがデータを読み取り、1つのプロセスがデータを書き込みます。
2.クライアント/を実装します。サーバーアーキテクチャープログラム、クライアント、およびサーバーはFIFOを介して通信します。
以上がFIFOパイプライン作成のためのLinuxの紹介ですこの記事では、FIFOパイプライン作成の紹介に加えて、FIFOの使い方とその注意点についても紹介します。
Ubuntuシステムの運用において、sudoを使用した場合、sudo:source:コマンドが見つかりませんというエラーメッセージが表示されます。次の小さなシリーズは
EclipseはJavaベースのエクステンション開発プラットフォームですが、最近ではネチズンが反応していますUbuntuシステムでEclipseを起動することは不可能です。次の小シリーズは、Ubunt
LinuxでのDDコマンドは一般的に使用されているコマンドの1つであり、DDコマンドも広く使用されています。ファイルをコピーするための既知のDDコマンドに加えて、DDコマンドを使用してディスクのパフォ
Linuxシステム複数のデータベースサーバー間の負荷を理解したい場合は、ClusterShellツールをLinuxの運用および保守ツールとして使用します。学ぶために、LinuxにClusterShel