定义
IPC(Inter-Process Communication,进程间通信)是指操作系统提供的进程之间交换数据和同步协作的机制。
低级通信方式
- 信号量:PV 操作,用于进程同步与互斥
高级通信方式
- 共享存储:多个进程共享同一块内存区域,需配合同步机制
- 消息传递
- 直接通信:发送方和接收方直接指定对方
- 间接通信:通过信箱(Mailbox)中转
- 管道通信:半双工通信,数据一旦被读取就被抛弃
- 匿名管道:父子进程间通信
- 命名管道:无亲缘关系进程间通信
对比
| 方式 | 速度 | 同步 | 复杂度 |
|---|---|---|---|
| 共享内存 | 快 | 需额外同步 | 高 |
| 消息传递 | 中 | 内置同步 | 中 |
| 管道 | 中 | 内置同步 | 低 |