进程间通信概述

来源:互联网 发布:超级淘宝系统 编辑:程序博客网 时间:2024/05/08 06:00

为什么进程间需要通信?

1 数据传输

    一个进程需要将它的数据发送给另一个进程。

2 资源共享

  多个进程共享同样的资源。

3 通知事件

  一个进程需要向另一个或一组进程发送消息,通知他们发生了某件事情。

4 进程控制

  有些进程希望完全控制另一个进程的执行(如Debug进程),此时控制进程希望能够拦截另一个进程的所有操作,并能够及时知道它的状态改变。

进程通信发展

Linux进程通信(IPC)由以下几部分发展而来:

        1. UNIX进程间通信

    2. 基于system V(也被称为AT&T System V,是UNIX操作系统众多版本的一个分支)进程间通信

    3. POSIX(portable operating system interface)进程间通信

进程通信分类

现在的linux使用的进程通信方式包括:

管道(pipe)和有名管道(FIFO)

2  信号(signal)

3  消息队列

4  共享内存

5  信号量

6  套接字