进程间通信方式
按类型分为三种:管道、系统IPC、套接字
管道
普通管道
属于单工通信,即仅允许一端发送一段接收,常用于父子进程之间的通信
流式管道
属于双工通信,即允许两端发送与接收,是普通管道的升级版,常用于父子进程之间的通信
命名管道
属于双工通信,即允许两端发送与接收,是流式管道的升级版,常用于不同进程之间的通信
系统IPC
消息队列
是在系统内核中维护的一个链表,允许并支持多个进程往里面写消息,读消息,从而实现进程间通信
信号量
本质是一个计数器,用来维护对某个资源的存取情况,常当做锁,配合共享内存来使用
共享内存
由系统开辟一块公共区域,提供给不同进程读写使用,一般需要配置信号量等锁机制实现
套接字
基于TCP/IP实现的SOCKET套接字,比起其他通信方式,可以用于不同操作系统之间的通信
总结
IPC用于多个进程之间相互传递、交换信息。互联网本质上也是不同物理机上不同进程之间的相互通信。