execvp在程序中启动新程序:
用fork创建新进程:
forkdemo2代码:
测试fork的时候参考《Linux权威指南》阅读笔记(3) 使用了patch:
[[email protected] programming]# diff -c forkdemo2.c forkdemo2_new.c > forkdemo2.patch [[email protected] programming]# patch < forkdemo2.patch patching file forkdemo2.c [[email protected] programming]# ls -lrt total 7 -rwxrwxrwx 1 root root 4953 Sep 6 11:05 forkdemo2 -rwxrwxrwx 1 root root 4957 Sep 6 11:14 forkdemo2_new -rwxrwxrwx 1 root root 119 Sep 6 11:17 forkdemo2_new.c -rwxrwxrwx 1 root root 263 Sep 6 11:24 forkdemo2.patch -rwxrwxrwx 1 root root 119 Sep 6 11:24 forkdemo2.c [[email protected] programming]#
这个forkdemo2输出的pid个数也挺有意思,最好从最底层往上算。
怎么判断是父进程还是子进程:在父进程中fork()的返回值是子进程的pid,在子进程中是0。
时间: 2024-10-10 08:17:53