第六十二章、什么是进程间通信?Linux下进程间通信有哪些目的

第六十二章、什么是进程间通信?Linux下进程间通信有哪些目的

在编程中我们通常需要使用多个相关的进程来执行有关操作,因此进程之间必须进行通信来共享资源和信息,所以,要求内核提供必要的机制,这些机制通常称为进程间通信(IPC)。

进程间通信有如下一些目的:

1、 数据传输。一个进程可能要发送数据到另一个进程。

2、 共享数据。多个进程想要操作共享的数据。一个进程修改了数据,其他共享该数据的进程应该立即看见这个变化。

3、 通知事件。当一些事件发生时,进程也许会向另一个进程或一组进程发消息通知事件的发生。例如:进程终止时,它要通知它的父进程。接收者可能是被异步通知的,这时它的正常处理被中断,由此,接收者可以选择等待通知。

4、 资源共享。一些要求相互操作的进程需要自行定义一些协议,这些协议针对它们要访问的特定的资源,这些协议是通过使用锁和同步机制来实现的,而锁和同步机制是建立在内核提供的基本功能之上的。

5、 进程控制。有些进程,例如,debugger希望完全控制另一个进程(目标进程)的执行。控制进程希望能够拦截为目标进程设计的所有的陷入和异常,并且能够及时知道目标进程的状态改变。


分享到:


相關文章: