fork vs vfork
=======================
代码段是共享的
1、fork():子进程拷贝父进程的数据段
vfork():子进程和父进程共享数据段
2、fork():父子进程执行次序不确定
vfork():子进程先执行,父进程后执行
====================
[root@www ttt]# ./fork1
count=1
pid is 0
child process,ID is 9379 pid=0
count=1
pid is 9379
parent process,ID is 9378 pid=9379
若fork改为vfork,子进程count=1,父进程count=2
===============================
exec函数族
exec():用被执行的程序替换调用它的程序。
区别:
fork创建一个新进程,产生一个新的PID
exec启动一个新程序,替换原有的进程,进程PID不变。
===============