进程间通信(IPC, Inter-Prpcess Communication)
至少两个进程或线程间 传送数据或信号 的一些技术或方法。进程是计算机系统分配资源的最小单位。每个进程都有自己的一部分独立的系统资源,彼此是隔离的。为了能使不同的进程互相访问资源并进行协调工作,才有了进程间通信。这些进程可以运行在同一计算机上或网络连接的不同计算机上。
进程间通信技术包括消息传递、同步、共享内存和远程过程调用。IPC是一种标准的Unix通信机制。
目前有下面一些进程间通信的方式:
- 命名和匿名管道 Pipe
- 信号标 Semaphore
- 互斥子 Mutex
- 共享内存 Shared Memory
- 消息队列 Message Queue
- 文件系统
- CORBA 公共对象请求代理结构(Common Object Request Breaker Architecture)
- D-Bus
下列方式只适合特定的操作系统平台或特定的编程语言
微软Windows
- COM 组件对象模型(Component Object Model)
- COM+
- DCOM 分布式组件对象模型(Distributed Component Object Model)
- OLE 对象链接和嵌入(Object Linking and Embedding)
有人认为这些也可以算是进程间通信的方式
- 剪贴板 Clipboard
- 人本身