linux 进程间通信方式总结

对linux 进程通信的一点简单总结,主要包括 管道通信,还有 system v, posix 标准的 消息队列,信号量,共享内存方式。

基于管道的通信主要包括有名管道,和无名管道,所谓的有名管道,就是创建的时候会带有具体的标识,以便于确认对谁操作,而无名管道是创建没有名字的管道,在于用的时候是否需要去带有标识的操作

消息队列和信号量,共享内存都分为 system v 和 POSIX 两种标准,System V 起源较早,用的更为广泛,但是操作上复杂了一些,同时与 linux 系统本身的文件规则不一样,一些函数自然无法使用,POSIX 正是基于这些来得新定义,使用一些标准的 IO 接口也能使用。

消息队列更偏向于消息通信,本身在处理一些命令通知这样的功能时较为合适,而共享内存因为是直接映射内存,所以相对在进程间传输大量数据时具有较好的应用场合。

信号量主要用于同步操作,一方执行需要,另一方的结果,或者防止竞争同一空间,而产生的功能。其中 POSIX 标准的无名信号量使用较为简单,多数也都是使用这种。

在这里插入图片描述

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值