管道:只能传输无格式的字节流 单向,先进先出 seek是不起作用的 读的时候管道空默认阻塞 写的时候管道满默认阻塞 只能单向通信,一个读,一个写
有名管道(fifo)
任何两个进程间都可以通信 node节点在磁盘上,内容还是在内存里,也很快
无名管道(pipe)
只能父子进程间通信 类似文件的操作,但是不是真的文件,不与磁盘交互,非常快
信号 unix 最早的通信方式 异步通信方式 信息量有限 1信号产生 2信号注册 3信号注销 4执行信号处理函数
消息队列 通信频繁,但是通信内容少 posix 消息队列和system v消息队列 内核重启或人工删除才会消失
共享内存 通信内容量大,效率高,不需要额外的函数,不需要额外的数据拷贝 内核中允许两个或多个进程共享的一部分物理内存,既这块内存是被两个或两个以上的进程映射到自身的地址空间
信号量 进程同步 也称为信号灯,保证两个或多个关键代码段不被并发调用
套接字 不同主机间的进程通信
有名管道(fifo)
任何两个进程间都可以通信 node节点在磁盘上,内容还是在内存里,也很快
无名管道(pipe)
只能父子进程间通信 类似文件的操作,但是不是真的文件,不与磁盘交互,非常快
信号 unix 最早的通信方式 异步通信方式 信息量有限 1信号产生 2信号注册 3信号注销 4执行信号处理函数
消息队列 通信频繁,但是通信内容少 posix 消息队列和system v消息队列 内核重启或人工删除才会消失
共享内存 通信内容量大,效率高,不需要额外的函数,不需要额外的数据拷贝 内核中允许两个或多个进程共享的一部分物理内存,既这块内存是被两个或两个以上的进程映射到自身的地址空间
信号量 进程同步 也称为信号灯,保证两个或多个关键代码段不被并发调用
套接字 不同主机间的进程通信