第11章UNIX进程之间的通信.pptVIP

  • 4
  • 0
  • 约4.59千字
  • 约 20页
  • 2016-08-20 发布于重庆
  • 举报
第11章UNIX进程之间的通信

第11章 UNIX进程之间的通信 UNIX进程间的通信机制用于解决进程之间的信息交换和协调彼此的推进速度。UNIX系统的进程通信包括管道、消息缓冲、共享主存和信号量机制。 11.1 管道通信(pipes) 管道通信是借助于文件使进程之间按先进先出方式同步传递数据的一种形式。 有两种类型的管道:无名管道(pipes)和有名管道(FIFO)。 无名管道用于父子或两兄弟进程之间以FIFO规则传递信息。管道必须由父进程创建。 有名管道(FIFO)通常用于实现不要求具有父子关系的进程之间传输大量的信息。 管道文件是一个临时文件,通信完成,文件就不再存在。 管道通信方式是:一个进程用write命令向管道写入数据,另一个进程用read命令读管道中的数据。 读、写必需同步。 一、创建无名管道(pipe)的系统调用 当同族进程之间需要通过管道进行通信时,调用系统调用pipe()建立一个无名管道。其调用语法如下: pipe(fdp) 这里,fdp是一个指针数组。纪录对管道读写的两个文件描述符。 其实现过程是: ① 在管道文件所在的设备上分配一个i节点,并在主存分配一个活动

文档评论(0)

1亿VIP精品文档

相关文档