当前位置: 技术问答>linux和unix
Linux系统下,不同的进程通信算法的优缺点
来源: 互联网 发布时间:2016-08-20
本文导语: Linux系统下,不同的进程通信算法的优缺点需要通过代码段来检测对比,希望能给予小辈指点:流程,代码…… 谢谢! | 消息队列在实现消息的收发时,首先发送进程从进程...
Linux系统下,不同的进程通信算法的优缺点需要通过代码段来检测对比,希望能给予小辈指点:流程,代码……
谢谢!
谢谢!
|
消息队列在实现消息的收发时,首先发送进程从进程空间将数据复制到内核分配的数据缓冲区,接受进程再从缓冲区复制到虚拟的地址空间。
共享内存是通过将内核分配的共享内存映射到进程的地址空间实现的,没有复制数据的过程。因此,共享内存的访问速度比消息队列快。
信号量实现的是一种类似计数器的功能,而不是像共享内存和消息对了那样用于存数进程间的数据。
好像在哪看到过说是信号跟信号量也有相似之处,前者一般用于内核对用户进程之间的通信,后者则用户进程也用户进程之间。
另外还有管道,就记得不太清澈了,套接口还没学到。嘿嘿
至于你所说的优缺点,我觉得更多的是自己的看法。觉得在哪个地方适用,那么这个时候在这个地方就是有点;否则,就是你所说的“缺点”了。
共享内存是通过将内核分配的共享内存映射到进程的地址空间实现的,没有复制数据的过程。因此,共享内存的访问速度比消息队列快。
信号量实现的是一种类似计数器的功能,而不是像共享内存和消息对了那样用于存数进程间的数据。
好像在哪看到过说是信号跟信号量也有相似之处,前者一般用于内核对用户进程之间的通信,后者则用户进程也用户进程之间。
另外还有管道,就记得不太清澈了,套接口还没学到。嘿嘿
至于你所说的优缺点,我觉得更多的是自己的看法。觉得在哪个地方适用,那么这个时候在这个地方就是有点;否则,就是你所说的“缺点”了。