SIGINT SIGTERM SIGKILL区别

三者都是结束/终止进程运行。

1.SIGINT SIGTERM区别

前者与字符ctrl+c关联,后者没有任何控制字符关联。

前者只能结束前台进程,后者则不是。

2.SIGTERM SIGKILL的区别

前者可以被阻塞、处理和忽略,但是后者不可以。KILL命令的默认不带参数发送的信号就是SIGTERM.让程序有好的退出。因为它可以被阻塞,所以有的进程不能被结束时,用kill发送后者信号,即可。即:kill-9 进程号。


信号是进程间通信的底层形式。

linux有标准信号32个,从32-63的信号是“实时”信号。

发送信号的原因

硬件异常:如0作为除数,内核会发送SIGFPE(信号值8)

软件异常:如进程终止时,内核会给父进程发送SIGCHLE(信号值17),窗口大小调整,应用程序会收到SIGWINCH(信号值28)

普通用户使用的信号:

信号值符号行为

2SIGINT进程终端,CTRL+C

9SIGKILL强制终端

15SIGTEM请求中断

20SIGTOP停止(挂起)进程 CRTL+D

1. kill

kill的应用是和ps 或pgrep 命令结合在一起使用的;

kill的默认信号是15,后面接的是pid号数字

kill -15 12345//12345

2、pkill

kill的默认信号是15,后面接的是进程名

pkill -u user 选择用户user所拥有的进程

-t term 选择term终端控制的进程,也可以是pst/1,pst/2等

3、killall

killall 通过程序的名字,直接杀死所有进程。

用法:killall 正在运行的程序名

killall 也和ps或pgrep 结合使用,比较方便;通过ps或pgrep 来查看哪些程序在运行;

举例:

[root@localhost beinan]# pgrep -l vi

1129 gaim

[root@localhost beinan]# killall vi

4、在top中使用k键中断

转至:http://hi.baidu.com/athenious/item/44f9189d0862ec8c58146189

http://blog.sina.com.cn/s/blog_8ee0be900100v5zb.html


更多相关文章

  1. Mysql:向信号量添加给定计数将导致其超出它的最大计数 错误
  2. java漏洞成黑客目标微软呼吁用户更新软件

随机推荐

  1. android stuido的aar文件怎么使用
  2. Android Recovery
  3. Android——AndroidStudio配置NDK步骤
  4. android 语言定制
  5. TextView中ellipsize属性
  6. android点滴(23)之android监听应用卸载
  7. Android(安卓)Studio 怎么添加使用第三方
  8. Android(安卓)ImageView的ScaleType属性
  9. android内核编译,终于ok了,总结之
  10. Android深入浅出系列课程---Lesson1 AAF1