进程间通讯:多个进程之间数据交换。
进程间通讯方式:信号、管道、信号量、消息队列、共享内存、套接字(socket)
进程创建:pid_t fork
进程间数据共享问题:
全局变量、堆、栈 不共享
文件 共享
按照信号传送方向与时间的关系,数据通信可以分为三种类型:单工通信、半双工通信、全双工通信。
单工通信:信号只能向一个方向传输,任何时候都不能改变信号的传送方向。
半双工通信:信号可以双向传递,但是必须是交替进行,一个时间只能向一个方向传送。
全双工通信:信号可以同时双向传递。
管道在同一时刻只能是半双工通信。
有名管道:在文件目录树中有一个文件标示(管道文件),实际不占磁盘空间,数据缓存在内存上。
应用于任意两个进程之间数据的单向传递。
具体操作
创建:(命令方式)mkfifo (函数方式)mkfifo()
打开: open
写数据: write
读数据: read
关闭: close
maina.