《进程间通信》PPT课件.ppt
《《进程间通信》PPT课件.ppt》由会员分享,可在线阅读,更多相关《《进程间通信》PPT课件.ppt(18页珍藏版)》请在三一办公上搜索。
1、第十章进程间通信,嵌入式,进程间通信IPC(InterProcess Communication)是一种进程之间交换信息的一种技术,IPC表示各种进程通信方式的统称IPC的类型有管道、消息队列、信号量、共享存储、网络等并不是所有的系统都支持所 有的进程间通信方式,进程间通信的概念,半双工管道简称管道,它是UNIX IPC的最老形式,是所有的UNIX系统都支持的IPC管道有两种限制,一是半双工,数据只能在一个方向上流动,二是它们只能在具有共同祖先的进程间使用。流管道没有第一种限制,FIFO和命名管道没有第二种限制管道的创建,管道,在单进程中使用管道没有意义,管道通常使用在父子进程间进行通信for
2、k函数的子进程继承父进程打开的文件描述符,包括管道,在父子进程中各关闭管道的一端就能建立起一条父子进程的通道父子进程关闭的管道端决定了通道的方向,管道的通信,对管道的读写操作与文件IO相同接口当读一个写端已被关闭的管道时,在所有数据都被读取后,read返回0,表示达到文件结束,而不返回EOF,因为写端的进程未终止当写一个读端已被关闭的管道时,则产生信号SIGPIPE,如果忽略或捕捉该信号,则write函数出错返回,errno置为EPIPE写管道有最大 缓冲,超过时有可能在多进程写时发生数据穿插,管道的通信规则,因为常见的操作是创建一个连接到另一个进程的管道,然后读其输入或向其发送输入,所以标准
3、IO提供一组函数实现此功能,它创建一个管道,fork一个进程,关闭管道的不使用端,exec一个shell执行命令,最后等待命令终止,popen/pclose函数,UNIX过滤程序从标准输入读取数据,对其进行适当处理后写到标准输出。当同一个程序产生某个过滤程序的输入,同时又读取该过滤程序的输出是,则该过滤程序就成为协同进程popen函数提供了连接到另一个进程的标准输入或输出的单行管道,而对于协同进程,它有连接到另一个进程的2为何单行管道,一个输入一个输出,先将要处理的数据写到输入,经过处理后再从输出读,协同进程,FIFO又称命名管道。不相关的进程也能通过命名管道来交换数据FIFO管道的创建非阻塞
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 进程间通信 进程 通信 PPT 课件

链接地址:https://www.31ppt.com/p-5611278.html