SIGINT,SIGQUIT,SIGTERM,SIGQUIT 这些停止进程的信号有什么不同
来源:互联网 发布:淘宝剑三代练 编辑:程序博客网 时间:2024/05/26 02:19
程序终止(interrupt)信号, 在用户键入INTR字符(通常是Ctrl-C)时发出,用于通知前台进程组终止进程。
3) SIGQUIT
和SIGINT类似, 但由QUIT字符(通常是Ctrl-\)来控制. 进程在因收到SIGQUIT退出时会产生core文件, 在这个意义上类似于一个程序错误信号。
15) SIGTERM
程序结束(terminate)信号, 与SIGKILL不同的是该信号可以被阻塞和处理。通常用来要求程序自己正常退出,shell命令kill缺省产生这个信号。如果进程终止不了,我们才会尝试SIGKILL。
19) SIGSTOP
停止(stopped)进程的执行. 注意它和terminate以及interrupt的区别:该进程还未结束, 只是暂停执行. 本信号不能被阻塞, 处理或忽略.
http://blog.csdn.net/ifengle/archive/2009/01/22/3849783.aspx
http://blog.csdn.net/lanmanck/archive/2009/09/19/4568911.aspx
三者都是结束/终止进程运行。
1.SIGINT SIGTERM区别
前者与字符ctrl+c关联,后者没有任何控制字符关联。
前者只能结束前台进程,后者则不是。
2.SIGTERM SIGKILL的区别
前者可以被阻塞、处理和忽略,但是后者不可以。KILL命令的默认不带参数发送的信号就是SIGTERM.让程序有好的退出。因为它可以被阻塞,所以有的进程不能被结束时,用kill发送后者信号,即可。即:kill-9 进程号。
信号是进程间通信的底层形式。
linux有标准信号32个,从32-63的信号是“实时”信号。
发送信号的原因
硬件异常:如0作为除数,内核会发送SIGFPE(信号值8)
软件异常:如进程终止时,内核会给父进程发送SIGCHLE(信号值17),窗口大小调整,应用程序会收到SIGWINCH(信号值28)
普通用户使用的信号:
信号值
2
9
15
20
1. kill
kill的应用是和ps 或pgrep 命令结合在一起使用的;
kill的默认信号是15,后面接的是pid号数字
kill -15 12345
2、pkill
kill的默认信号是15,后面接的是进程名
pkill -u user 选择用户user所拥有的进程
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键中断
- SIGINT,SIGQUIT,SIGTERM,SIGQUIT 这些停止进程的信号有什么不同
- SIGINT,SIGQUIT,SIGTERM等终止进程信号的区别
- SIGTERM、SIGKILL、SIGINT和SIGQUIT的区别
- SIGTERM、SIGKILL、SIGINT和SIGQUIT的区别
- SIGINT、SIGQUIT、 SIGTERM、SIGSTOP区别
- UNIX环境高级编程学习之第十章信号-信号集的操作,让进程阻塞SIGQUIT信号
- Linux中与进程终止相关的信号SIGTERM,SIGKILL,SIGINT
- sigint sigterm 的区别
- sigint sigterm 的区别
- SIGTERM和SIGINT的含义
- uinx 信号 SIGINT SIGTERM SIGKILL区别
- 10_15.c先阻塞SIGQUIT信号,再释放。
- SIGTERM SIGINT
- SIGTERM SIGINT
- SIGTERM SIGINT
- 关于SIGKILL SIGQUIT
- signal系列之SIGQUIT
- Linux的Signal及Singal处理(SIGQUIT SIGKILL SIGBUS等)
- stm32库函数void SystemInit (void)分析
- 【转发】使用tomcat7创建异步servlet
- 研究:Liferay研究(六)Liferay中如何获取相应的portlet实例Id和portletId
- random+tput 更改屏幕显示
- 09-13 PHP study code
- SIGINT,SIGQUIT,SIGTERM,SIGQUIT 这些停止进程的信号有什么不同
- 自行实现Solr重复分词过滤器
- Cocos2d-X内存管理研究
- Django 静态文件和媒体文件配置
- ssziparchive 解压 和 压缩
- 如何使用Putty(SSH)登录管理Linux服务器
- IOC容器的经典解释
- 一口一口吃掉Hibernate(二)——别被世俗蒙蔽了双眼:Hibernate中Session之get和load方法的真正区别
- 量产工具简介(1)