ChinaUnix.net
相关文章推荐:

linux zombie进程

一个进程在调用exit命令结束自己的生命的时候,其实它并没有真正的被销毁,而是留下一个称为僵尸进程zombie)的数据结构(系统调用exit,它的作用是使进程退出,但也仅仅限于将一个正常的进程变成一个僵尸进程,并不能将其完全销毁)。在linux进程的状态中,僵尸进程是非常特殊的一种,它已经放弃了几乎所有内存空间,没有任何可执行代码,也不能被调度,仅仅在进程列表中保留一个位置,记载该进程的退出状态等信息供其他进程...

by ubuntuer - Linux文档专区 - 2009-10-06 15:58:30 阅读(1034) 回复(0)

相关讨论

详见: http://cocre.com/?p=656 本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u3/99982/showart_2000008.html

by istvh - Linux文档专区 - 2009-07-18 15:11:18 阅读(692) 回复(0)

当一个程序创建的子进程比父进程提前结束,内核仍然保存一些它的信息以便父进程会需要它 - 比如,父进程可能需要检查子进程的退出状态。为了得到这些信息,父进程调用‘wait()’;当这个调用发生,内核可以丢弃这些信息。 在子进程终止后到父进程调用‘wait()’前的时间里,子进程被称为‘僵死进程’(‘zombie’)。(如果你用‘ps’,这个子进程会有一个‘Z’出现在它的状态区里指出这点。)即使它没有在执行,它仍然占据进程表里...

by istvh - Linux文档专区 - 2009-10-09 23:27:03 阅读(642) 回复(0)

本帖最后由 bsknight 于 2011-02-20 17:22 编辑 [code] #define PSCMD "ps -o pid,ppid,state,tty,command" int main(void) { pid_t pid; if ((pid = fork()) < 0) err_sys("fork error"); else if (pid == 0) /* child */ exit(0); /* parent */ system(PSCMD); abort(); } [/code]为什么结果中,子进程变成了zombie? 主进程是在system(PSCMD);之后被终止,...

by bsknight - C/C++ - 2011-02-28 15:41:44 阅读(2077) 回复(8)

通常zombie状态进程的父进程是1号进程,现在遇到的问题是如何释放处于僵死状态的进程所占用的内存空间?

by strongzgy - 内核/嵌入技术 - 2006-06-15 16:42:00 阅读(1440) 回复(3)

通常zombie状态进程的父进程是1号进程,现在遇到的问题是如何释放处于僵死状态的进程所占用的内存空间?

by strongzgy - 内核源码 - 2006-06-15 16:42:00 阅读(1932) 回复(3)

int main() { pid_t pid; int status; if ((pid = fork()) < 0){ exit(1); } if (pid > 0) { printf("I am P \n"); sleep(10); } if (pid == 0){ printf("I am C \n"); exit(0); } } 子进程先是zombie,等父进程退出后它也退出了 我在父进程并没有wait,谁回收了zombie的子进程的呢?

by zxw01 - C/C++ - 2006-05-15 21:48:56 阅读(4612) 回复(44)

linux为什么会设计这样一种进程?一个进程退出时为什么不去检查它自己的子进程是否有zombie的,还要让init进程去clean up。 谁能讲讲zombie进程的设计初衷阿?

by cppcraze - 程序开发 - 2006-05-15 20:47:08 阅读(1653) 回复(8)

linux为什么会设计这样一种进程?一个进程退出时为什么不去检查它自己的子进程是否有zombie的,还要让init进程去clean up。 谁能讲讲zombie进程的设计初衷阿?

by cppcraze - Linux环境编程 - 2006-05-15 20:47:08 阅读(2182) 回复(8)

我是个新手,刚刚接触linux系统,现在机器在做并行作业时老是出现错误。产生了好多defunct进程zombie进程,用kill -9 xxxxx根本杀不掉,系统没有反应了,连账户都登不进去了。求助各位大侠帮帮忙,告诉我该怎么解决?急等。 我系统是red hat enterprise linux 3。 [ 本帖最后由 浮山上的礁石 于 2006-7-27 15:25 编辑 ]

by 浮山上的礁石 - 集群和虚拟机 - 2006-07-28 18:09:04 阅读(1812) 回复(5)

我是个新手,刚刚接触linux系统,现在机器在做并行作业时老是出现错误。产生了好多defunct进程zombie进程,用kill -9 xxxxx根本杀不掉,系统没有反应了,连账户都登不进去了。求助各位大侠帮帮忙,告诉我该怎么解决?急等。 我系统是red hat enterprise linux 3。 [ 本帖最后由 浮山上的礁石 于 2006-7-27 15:25 编辑 ]

by 浮山上的礁石 - 集群和高可用 - 2006-07-28 18:09:04 阅读(2603) 回复(5)