各信号含义
- SIGINT 终止进程 中断进程
- 程序终止(interrupt)信号, 在用户键入INTR字符(通常是Ctrl-C)时发出。
- SIGQUIT 建立CORE文件终止进程,并且生成core文件
- SIGQUIT 和 SIGINT 类似,但由QUIT字符(通常是Ctrl-)来控制;进程在因收到SIGQUIT退出时会产生core文件,在这个意义上类似于一个程序错误信号。
- SIGKILL 终止进程 杀死进程
- SIGPIPE 终止进程 向一个没有读进程的管道写数据
- SIGALARM 终止进程 计时器到时
- SIGTERM 终止进程 软件终止信号
- SIGTERM 程序结束(terminate)信号,与SIGKILL不同的是该信号可以被阻塞和处理。通常用来要求程序自己正常退出。shell命令kill缺省产生这个信号。SIGTERM is the default signal sent to a process by the kill or killall commands.
- SIGURG 忽略信号 I/O紧急信号
- SIGIO 忽略信号 描述符上可以进行I/O
- SIGCHLD 忽略信号 当子进程停止或退出时通知父进程
有两个信号可以停止进程:SIGTERM和SIGKILL。SIGTERM比较友好,进程能捕捉这个信号( it can be caught and interpreted (or ignored) by the process),根据您的需要来关闭程序。在关闭程序之前,您可以结束打开的记录文件和完成正在做的任务。在某些情况下,假如进程正在进行作业而且不能中断,那么进程可以忽略这个SIGTERM信号。
对于SIGKILL信号,进程是不能忽略的( this signal cannot be caught or ignored,)。这是一个“我不管您在做什么,立刻停止”的信号。假如您发送SIGKILL信号给进程,Linux就将进程停止在那里