写时复制如何降低进程创建成本,又为何可能造成突发内存压力
简答题中等827 次浏览
参考答案与解析
# 核心结论
写时复制(Copy-on-Write,简称 COW)通过“先共享、后复制”降低进程创建成本:执行 fork 时,内核不立即复制父进程的全部物理内存,而是让父子进程的页表暂时指向相同物理页,并通过只读权限和引用计数保护这些页面。只有父进程或子进程首次写入某页时,才触发页故障,由内核为写入方复制该页并建立私有映射。因此,fork 的初始开销主要是创建进程管理结构、复制页表和维护引用关系,而不是复制整个地址空间,特别适合子进程很快调用 execve 的场景。
它也可能造成突发内存压力:如果父子进程在短时间内大量修改原本共享的页面,许多写时复制故障会集中发生,物理内存占用、内存复制量和页表更新成本会
