僵尸进程(zombie process):在UNIX 系统中,一个进程结束了,但是他的父进程没有等待(调用wait / waitpid)他, 那么他将变成一个僵尸进程. 但是如果该进程的父进程已经先结束了,那么该进程就不会变成僵尸进程, 因为每个进程结束的时候,系统都会扫描当前系统中运行的所有进程,...
分类:
其他好文 时间:
2014-08-31 17:09:41
阅读次数:
205
反正书上讲的把我搞得晕头转向的,本来就困,越敲越晕......转网上一个大神写的吧,他分析的很好(个人感觉比书上的清楚多了)转:http://blog.csdn.net/u010536683/article/details/12450865
分类:
其他好文 时间:
2014-07-29 17:26:12
阅读次数:
185
如题Unix/Linux系统中僵尸进程是如何产生的?有什么危害?如何避免?一个进程在调用exit命令结束自己的生命的时候,其实他并没有真正的被销毁,而是留下一个称为僵尸进程(Zombie)的数据结构(系统调用exit,他的作用是使进程退出,但是也仅仅限于一个正常的进程变成了一个僵尸进程,并不能完全将...
分类:
系统相关 时间:
2014-06-13 20:00:59
阅读次数:
269
序
僵死(zombie)进程简而言之就是:子进程退出时,父进程并未对其发出的SIGCHILD信号进行适当处理,导致子进程停留在僵死状态等待其父进程为其收尸,这个状态下的子进程就是僵死进程。
因为并发服务器常常fork很多子进程,子进程终结之后需要服务器进程去wait清理资源。对于某些进程,特别是服务器进程往往在请求到来时生成子进程处理请求。如果父进程不等待子进程结束,子进程将成为僵尸进程(zo...
分类:
系统相关 时间:
2014-05-25 06:12:34
阅读次数:
313
当我们对于内存进行手动管理的时候,会出现两种错误:一种是野指针错误,一种则为内存泄露.这两点也是我们去管理内存时最终要解决的问题.
内存泄漏是指:不在使用的对象,一直保留在内存中未被销毁,一直占有着内存,耗费内存资源直至程序结束.
野指针则是指:当一个指针指向一个对象时,此对象已经被系统回收...
分类:
其他好文 时间:
2014-05-17 21:10:52
阅读次数:
1122
进程状态TASK_RUNNING可运行或正在运行TASK_INTERRUPTIBLE进程被阻塞,但可以被信号唤醒TASK_UNINTERRUPTIBLE进程被阻塞,且不可以被信号唤醒TASK_STOPPED进程已停止,且不能再投入运行TASK_ZOMBIE所谓的僵死进程,进程描述符仍然保留关键函数和...
分类:
系统相关 时间:
2014-05-05 09:45:05
阅读次数:
473