fork与vfork的区别与联系

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了fork与vfork的区别与联系相关的知识,希望对你有一定的参考价值。

fork()与vfock()都是创建一个进程,那他们有什么区别呢?总结有以下三点区别:
1. fork ():子进程拷贝父进程的数据段,代码段
vfork ( ):子进程与父进程共享数据段
2. fork ()父子进程的执行次序不确定
vfork 保证子进程先运行,在调用exec 或exit 之前与父进程数据是共享的,在它调用exec
或exit 之后父进程才可能被调度运行。
3. vfork ()保证子进程先运行,在她调用exec 或exit 之后父进程才可能被调度运行。如果在
调用这两个函数之前子进程依赖于父进程的进一步动作,则会导致死锁。

 

以上是关于fork与vfork的区别与联系的主要内容,如果未能解决你的问题,请参考以下文章

fork与vfork的用法与区别

linux 进程创建clonefork与vfork

聊聊Linux中线程和进程的联系与区别!

聊聊Linux中线程和进程的联系与区别!

什么是进程?和线程区别?

Bagging与Boosting的联系与区别