Linux进程间通信的几种方式
Posted 佳星辰
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux进程间通信的几种方式相关的知识,希望对你有一定的参考价值。
一、进程间通信的目的
- 数据传输:一个进程需要将它的数据发送给另一个进程,发送的数据量在一个字节到几M字节之间
- 共享数据:多个进程要操作共享数据,一个进程对共享数据
- 信息传递:一个进程需要向另一个进程发送消息,通知它发生了某种事件。
- 资源共享:多个进程之间共享同样的数据。为了做到这一点,需要内核提供锁和同步机制。
- 进程控制:有些进程希望完全控制另一个进程的执行,此时控制进程希望能够拦截另一个进程的所有陷入和异常,病能够及时知道它的状态改变
二、进程间通信的概念
每个进程各自有不同的用户地址空间,任何一个进程的变量在另一个进程中都是看不到的,所以进程之间要交换数据必须通过内核,在内核中开辟出一块缓冲区。一个进程把自己的数据从用户空间拷贝到内核缓冲区,另一个进程再从内核缓冲区把数据读走。内核提供的这种机制称为进程间通信(IPC,InterProcess Communication)
以上是关于Linux进程间通信的几种方式的主要内容,如果未能解决你的问题,请参考以下文章