加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

perl – 标记为copy-on-write的所有内存是否在一次更改一个数据

发布时间:2020-12-15 23:26:33 所属栏目:大数据 来源:网络整理
导读:我的问题可能是一个措辞不好的问题,源于我对记忆管理的业余理解. 我担心的是:我有一个多次出现的Perl脚本.据我所知,在perldoc的fork页面中,正在实现copy-on-write.然后每个孩子调用system(),再次分叉,调用外部程序.来自外部程序的数据被读回到子项中,并作为
我的问题可能是一个措辞不好的问题,源于我对记忆管理的业余理解.

我担心的是:我有一个多次出现的Perl脚本.据我所知,在perldoc的fork页面中,正在实现copy-on-write.然后每个孩子调用system(),再次分叉,调用外部程序.来自外部程序的数据被读回到子项中,并作为可存储文件转储,以便在所有子项退出后由父项处理并处理.

我担心的是我对这种情况的波动性.考虑一下,在我看来,最坏的情况:
????对于每个子节点,一旦新数据到达,整个写时复制存储器就会被复制.如果是这种情况,我会在创建一些分支后快速遇到内存问题.

但另外,copy-on-write是否只复制包含所需数据的最小内存块?那么这个量子的记忆是什么?它的大小如何设定?

我不确定我所询问的细节是否依赖于语言或依赖于某些较低级别的过程.

解决方法

内存以页面形式组织,通常每个4K(这可以设置为不同的值,并且是特定于硬件的,但这是具有标准操作系统的英特尔平台上的标准).当子进程写入写入时复制页面时,它将被复制.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读