vfork进程创建

文章详细对比了vfork和fork在创建进程时的不同,指出vfork不复制父进程的存储空间,而是直接使用,并确保子进程先运行,直到调用exit后父进程才继续执行。这导致了vfork创建的子进程与父进程共享内存,从而影响父进程的状态。
摘要由CSDN通过智能技术生成

  vfork也可以创建进程,它与fork的区别如下:

  • vfork直接使用父进程的存储空间,不拷贝不建立副本。
  • vfork保证子进程先运行,当子进程调用exit退出后,父进程才执行。

fork与vfork的区别示例:

fork:

 

 

可以看到使用fork创建进程是父子进程在同时运行的,在交替打印的。

vfork:

 

 

可以看到 vfork是只有在子进程exit后父进程才继续执行,且子进程操作后的cnt,父进程的cnt进行打印页发生了相应的改变,由此可以看出vfork创建的子进程是和父进程共享一片内存空间的。

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值