linux写时复制(copy-on-write)技术

linux在调用fork创建子进程时使用了“写时复制”技术。写时复制主要是原理如下:

  1. 进程在调用fork时子进程不会立刻父进程所使用的物理内存页,而是子进程只会复制一份父进程的虚拟内存和物理内存的映射关系,即父子进程共用父进程的物理内存页。此时会将它们共用的内存页均设置为只读
  2. 当父进程或子进程中任何一进程对内存进行写操作时,由于步骤1将内存设置为只读,因此将发生内存读写权限错误。此时将根据相关状态判断,将它们共用的物理内存复制一份,并建立新的映射关系,父子进程的内存正式分离。

通过“写时复制”技术,具有以下优势:

  • 由于调用fork时仅仅复制了父进程的虚拟内存和物理内存映射关系,因此具有创建子进程速度快优势。
  • 在父子进程均未写内存时,两者共用一份内存,节约了内存

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值