分类: LINUX
2012-02-15 20:39:24
++++++APUE读书笔记-15进程内部通信-11总结++++++
11、总结
================================================
我们详细讲解了内部进程通信技术:pipes,有名管道(FIFOs),和三种XSI的通用IPC技术(消息队列,信号量,和共享内存)。信号量实际上是一种同步机制,并不是真正的IPC机制,它一般用来同步共享资源的访问,例如共享内存段。通过pipes,我们看到了popen函数的实现,协作处理进程,以及使用标准输入输出库时候缓存时候遇到的问题。
在对比了消息队列和全双工管道,信号量和记录锁的时间之后,我们可以得到如下建议:应该学习管道(pipes)和有名管道(FIFOs),因为这两种基本的技术在许多的应用程序中工作的效率还是非常高的。避免在新的应用程序中使用消息队列和信号量,可以使用全双工管道和记录锁来替代,因为它们使用起来要简单得多。尽管使用mmap函数也能实现类似共享内存的功能,但是共享内存还是有它的作用的。
在后面,我们将会看到网络的IPC技术,这允许进程之间跨越不同的机器进行通信。
参考: