免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 6341 | 回复: 9
打印 上一主题 下一主题

Kill和kill -9有什么区别呀?对于-9而言,进程拥有的资源会被释放吗? [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2008-12-12 14:02 |只看该作者 |倒序浏览
一个是SIGTERM信号,一个是SIGKILL信号。书上只说SIGKILL会强制杀死进程,怎么强制呀?进程拥有的资源会被释放吗?
比如进程的文件描述符、套接字、共享内存对象等等。

[ 本帖最后由 frameyl 于 2008-12-12 15:33 编辑 ]

论坛徽章:
36
IT运维版块每日发帖之星
日期:2016-04-10 06:20:00IT运维版块每日发帖之星
日期:2016-04-16 06:20:0015-16赛季CBA联赛之广东
日期:2016-04-16 19:59:32IT运维版块每日发帖之星
日期:2016-04-18 06:20:00IT运维版块每日发帖之星
日期:2016-04-19 06:20:00每日论坛发贴之星
日期:2016-04-19 06:20:00IT运维版块每日发帖之星
日期:2016-04-25 06:20:00IT运维版块每日发帖之星
日期:2016-05-06 06:20:00IT运维版块每日发帖之星
日期:2016-05-08 06:20:00IT运维版块每日发帖之星
日期:2016-05-13 06:20:00IT运维版块每日发帖之星
日期:2016-05-28 06:20:00每日论坛发贴之星
日期:2016-05-28 06:20:00
2 [报告]
发表于 2008-12-12 14:13 |只看该作者
kill -9是强制杀死进程

论坛徽章:
36
IT运维版块每日发帖之星
日期:2016-04-10 06:20:00IT运维版块每日发帖之星
日期:2016-04-16 06:20:0015-16赛季CBA联赛之广东
日期:2016-04-16 19:59:32IT运维版块每日发帖之星
日期:2016-04-18 06:20:00IT运维版块每日发帖之星
日期:2016-04-19 06:20:00每日论坛发贴之星
日期:2016-04-19 06:20:00IT运维版块每日发帖之星
日期:2016-04-25 06:20:00IT运维版块每日发帖之星
日期:2016-05-06 06:20:00IT运维版块每日发帖之星
日期:2016-05-08 06:20:00IT运维版块每日发帖之星
日期:2016-05-13 06:20:00IT运维版块每日发帖之星
日期:2016-05-28 06:20:00每日论坛发贴之星
日期:2016-05-28 06:20:00
3 [报告]
发表于 2008-12-12 14:13 |只看该作者
有些进程只适用kill  PID是杀不死的, kill -9 PID就可以了

论坛徽章:
0
4 [报告]
发表于 2008-12-12 15:29 |只看该作者
请看清楚我的问题,谢谢!

[ 本帖最后由 frameyl 于 2008-12-12 15:32 编辑 ]

论坛徽章:
36
IT运维版块每日发帖之星
日期:2016-04-10 06:20:00IT运维版块每日发帖之星
日期:2016-04-16 06:20:0015-16赛季CBA联赛之广东
日期:2016-04-16 19:59:32IT运维版块每日发帖之星
日期:2016-04-18 06:20:00IT运维版块每日发帖之星
日期:2016-04-19 06:20:00每日论坛发贴之星
日期:2016-04-19 06:20:00IT运维版块每日发帖之星
日期:2016-04-25 06:20:00IT运维版块每日发帖之星
日期:2016-05-06 06:20:00IT运维版块每日发帖之星
日期:2016-05-08 06:20:00IT运维版块每日发帖之星
日期:2016-05-13 06:20:00IT运维版块每日发帖之星
日期:2016-05-28 06:20:00每日论坛发贴之星
日期:2016-05-28 06:20:00
5 [报告]
发表于 2008-12-12 15:50 |只看该作者
Kill和kill -9有什么区别呀?


我回答了你标题上的提问

论坛徽章:
0
6 [报告]
发表于 2008-12-12 15:51 |只看该作者
所谓的强制就是进程不能无视它而已。进程是可以忽略SIGTERM的。
资源当然会释放,程序本来就是OS杀的,OS怎么可能忘了收尸呢。

论坛徽章:
0
7 [报告]
发表于 2008-12-12 16:35 |只看该作者

回复 #1 frameyl 的帖子

ctrl+c 肯定用过吧,这里的强制应该是指的这个意思,平时用的kill -9 or killall -9 PID 也有类似含义。资源肯定是由系统回收的,是否由父进程收要看fork后的设置。

论坛徽章:
0
8 [报告]
发表于 2008-12-15 16:44 |只看该作者

回复 #7 wqhl.mark 的帖子

我想知道的是既然都会释放资源,那我们都用kill -9就行了,还用SIGTERM干啥呀?

论坛徽章:
0
9 [报告]
发表于 2008-12-16 09:56 |只看该作者
>>我想知道的是既然都会释放资源,那我们都用kill -9就行了,还用SIGTERM干啥呀?

kill -9 ,进程无法处理该信号,进程无条件被终止,且得不到通知

kill SIGTERM,进程可以处理该信号,可以做点释放资源,关闭文件等保证一致性的操作

论坛徽章:
0
10 [报告]
发表于 2008-12-16 11:06 |只看该作者

回复 #9 qtdszws 的帖子

谢谢!
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP