代码改变世界

僵尸进程的产生和避免

2011-12-29 21:06 by lu35, 121 阅读, 0 推荐, 收藏,
转自:http://hi.baidu.com/wlzqi/blog/item/208cebc4b1c02dab8326ac79.html 在fork()/execve()过程中,假设子进程结束时父进程仍存在,而父进程fork()之前既没安装SIGCHLD信号处理函数调用waitpid()等待子进程结束,又没有显式忽略该信号,则子进程成为僵尸进程,无法正常结束,此时即使是root身份kill -9也不能杀死僵尸进程。补救办法是杀死僵尸进程的父进程(僵尸进程的父进程必然存在),僵尸进程成为”孤儿进程”,过继给1号进程init,init始终会负责清理僵尸进程。产生原因:1.在子进程终止后到父进...
点击右上角即可分享
微信分享提示