linux应用开发-无名管道编程

linux应用开发-无名管道编程
一 linux进程间通信(ipc)

1 UNIX进程间通信
2 基于System V的通信
3 POSIX通信

二 七种通信方式

1 管道
一个进程在管道的尾部写入数据,另一个进程从管道的头部
读出数据。管道包括无名管道和有名管道两种,前者只能用
于父进程和子进程间的通信,后者可用于运行于同一系统中
的任意两个进程间的通信。


分类:
无名管道(pipo):用于父进程和子进程间的通信
有名管道(FIFO):用于运行于同一系统中的任意两个进程间的通信


特点:
1 管道通讯是单向的,有固定的读端和写端。
2 数据被进程从管道读出后,在管道中该数据就不存在了。
3 当进程去读取空管道的时候,进程会阻塞。
4 当进程往满管道写入数据时,进程会阻塞。
5 管道容量为64KB(#define PIPE_BUFFERS 16
include/linux/pipe_fs_i.h)

使用:
在创建子进程前创建管道
技术分享
技术分享
3 信号(signal)


4 消息队列


5 共享内存


6 信号量


7 套接字(socket)

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。