共享内存有何用途

 我来答
居照靖弘懿
2020-05-08 · TA获得超过3700个赞
知道小有建树答主
回答量:3084
采纳率:26%
帮助的人:202万
展开全部
共享内存可以说是最有用的进程间通信方式,也是最快的IPC形式。两个不同进程A、B共享内存的意思是,同一块物理内存被映射到进程A、B各自的进程地址空间。进程A可以即时看到进程B对共享内存中数据的更新,反之亦然。由于多个进程共享同一块内存区域,必然需要某种同步机制,互斥锁和信号量都可以。
采用共享内存通信的一个显而易见的好处是效率高,因为进程可以直接读写内存,而不需要任何数据的拷贝。对于像管道和消息队列等通信方式,则需要在内核和用户空间进行四次的数据拷贝,而共享内存则只拷贝两次数据:一次从输入文件到共享内存区,另一次从共享内存区到输出文件。实际上,进程之间在共享内存时,并不总是读写少量数据后就解除映射,有新的通信时,再重新建立共享内存区域。而是保持共享区域,直到通信完毕为止,这样,数据内容一直保存在共享内存中,并没有写回文件。共享内存中的内容往往是在解除映射时才写回文件的。因此,采用共享内存的通信方式效率是非常高的
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
Jtti
2024-06-18 广告
导致香港服务器内存不足的原因比较多,Jtti总结了几点,具体如下:1、香港服务器应用程序池没有及时释放内存导致,应用程序池有一个默认回收的时间,到了这个时间就会自动释放内存,这个时间一般是1740分钟,而这种程度的时间可能会导致应用程序池无... 点击进入详情页
本回答由Jtti提供
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式