1、 管道(半双工管道是最常用的IPC)
只能在有关系的进程间才能使用,shell上常用
2、 命名管道
在文件系统中命名管道式以特殊文件的形式存在的。不在同一进程组的两个进程通讯可以使用命名管道。
3、 消息队列
内核空间中的内部链表,通过linux内核在各个进程之间传递内容
4、 信号
用于在一个或多个进程间传递异步信号。
linux系统中定义了一系列的信号,这些信号可以由内核产生,也可以由系统中其他进程产生,只要这些进程有足够的权限。
进程可以屏蔽掉大多数的信号,除了SIGSTOP与SICKILL
5、 信号量
信号量是一种计数器,用来控制对多个进程共享的资源所进行的访问。常被用作一个锁机制,在某个进程正在对待特定资源进行操作时,信号量可以防止另一个进程去访问它。生产者和消费者的模型是信号量的典型使用。
6、 共享内存(最快的一种)
多个进程之间共享内存区域的一种进程间的通信方式,他是在多个进程之间对内存段进行映射的方式实现内存共享
7、 套接字