进程退出(UNIX环境高级编程笔记)

  如果父进程fork了一个子进程,父进程先于子进程终止,子进程的父进程将改为init进程。其大致操作是:在一个进程终止时,内核诸葛检查所有活动进程,以判断它是否是正要终止进程的子进程,如果是,则该进程的父进程ID就更改为1。
  内核为每个终止子进程保存了一定量的信息,当终止进程的父进程通过wait或waitpid时,可以获得这些信息。
  内核可释放终止进程所使用的所有存储区,关闭所有打开文件。
  在UNIX术语中,一个已经终止、但是其父进程尚未对其进行善后处理的进程被称为僵死进程(zombie)。
  init进程被编写成无论何时只要有一个子进程退出,就调用给一个wait函数取得其终止状态。

猜你喜欢

转载自blog.csdn.net/The_perfect_world/article/details/89357612