在书上看到一段话,描述进程的一生,感觉写的挺好的
首先,随着fork的成功执行,一个新的子进程诞生,此时他还只是父进程的一个克隆,从父进程那里得到数据段和堆栈段的拷贝。然后随着exec,新的进程脱胎换骨,独立成家,看是独自执行一个全新的程序,并完全代替原有的父进程。
人有生老病死,进程也一样,他可以是自然死亡,即运行到main函数的最后一"}",从容的离我们而去;也可以自杀,自杀有两种方式,第一种是调用exit函数,一种是在main函数内使用return,无论哪一种方式,他都可留下遗书,放在返回值里保存下来,;他甚至还可能被杀,被其他进程通过另外一些方式结束他的生命。
进程死掉时候之后,会留下一具僵尸,wait和waitpid充当了搬尸工,把僵尸退去火化,使其最终归于无形……
这就是进程的一生……