首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 操作系统 > UNIXLINUX >

关于僵死进程

2012-03-31 
关于僵死进程,求助如果子进程终止,但是父进程为对他进行善后处理(获取子进程的有关信息,释放它仍占用的资

关于僵死进程,求助
如果子进程终止,但是父进程为对他进行善后处理(获取子进程的有关信息,释放它仍占用的资源),这样的进程就叫僵死进程。

请问,进程终止后还有留在哪里的哪些资源系统不能释放,必须要由父进程去处理?

[解决办法]
好吧,这个是linux内核 的一些概念了,这么说吧,每个进程都有每个进程的 task_struct ( 存储在每个task的栈区的底部,), thread_info, 最重要的是 内核栈 区的保存 ,这个资源是不会被释放的,而一个进程退出了,只会释放它创建出的东西,比如 mmap fd sem等等信息,因为这是它自己创建的,由它自己回收是正常的。

那什么不是它自己创建的呢?task_struct thread_info 和 stack。这些信息如果内核不关心的话,直接丢弃好了,当然肯定会有人关心,比如出错的时候,肯定要知道它到底执行了那些操作(stack保存着)。

task_struct 就是每个进程的一个标示一样,里面存储着,你占用那些资源,调度,等级,nice值,等等。

你可以这样理解, 父亲和儿子的关系 父亲死了,那儿子只好被上帝(init 进程 , 上帝是创造一切东西的东东)领养,如果儿子死了,那父亲要去为儿子收尸(并看看儿子身上的状态,找死因)。

热点排行