当前位置:   article > 正文

Linux - 常用信号_linux 会话信号

linux 会话信号

常用信号

  • 1 SIGHUP:本信号在用户终端结束时发出,通常是在终端的控制进程结束时,通知同一会话期内的各个作业,这时他们与控制终端不在关联。比如,登录Linux时,系统会自动分配给登录用户一个控制终端,在这个终端运行的所有程序,包括前台和后台进程组,一般都属于同一个会话。当用户退出时,所有进程组都将收到该信号,这个信号的默认操作是终止进程。此外对于与终端脱离关系的守护进程,这个信号用于通知它重新读取配置文件。

  • 2 SIGINT:程序终止信号。当用户按下CRTL+C时通知前台进程组终止进程。

  • 3 SIGQUIT:Ctrl+\控制,进程收到该信号退出时会产生core文件,类似于程序错误信号。

  • 4 SIGILL:执行了非法指令。通常是因为可执行文件本身出现错误,或者数据段、堆栈溢出时也有可能产生这个信号。

  • 5 SIGTRAP:由断点指令或其他陷进指令产生,由调试器使用。

  • 6 SIGABRT:调用abort函数产生,将会使程序非正常结束。

  • 7 SIGBUS:非法地址。包括内存地址对齐出错。比如访问一个4个字长的整数,但其地址不是4的倍数。它与SIGSEGV的区别在于后者是由于对合法地址的非法访问触发。

  • 8 SIGFPE:发生致命的算术运算错误。

  • 9 SIGKILL:用来立即结束程序的运行。不能被捕捉、阻塞或忽略,只能执行默认动作。

  • 10 SIGUSR1:留给用户使用,用户可自定义。

  • 11 SIGSEGV:访问未分配给用户的内存区。或操作没有权限的区域。

  • 12 SIGUSR2:留给用户使用,用户可自定义。

  • 13 SIGPIPE:管道破裂信号。当对一个读进程已经运行结束的管道执行写操作时产生。

  • 14 SIGALRM:时钟定时信号。由alarm函数设定的时间终止时产生。

  • 15 SIGTERM:程序结束信号。shell使用kill产生该信号,当结束不了该进程,尝试使用SIGKILL信号。

  • 16 SIGSTKFLT:堆栈错误。

  • 17 SIGCHLD:子进程结束,父进程会收到。如果子进程结束时父进程不等待或不处理该信号,子进程会变成僵尸进程。

  • 18 SIGCONT:让一个停止的进程继续执行。

  • 19 SIGSTOP:停止进程执行。不能被捕捉、阻塞或忽略,只能执行默认动作。

  • 20 SIGTSTP:停止终端交互运行,可以被忽略。按下Ctrl+z发出这个信号。

  • 21 SIGTTIN:当后台进程需要从终端接收数据时,所有进程会收到该信号,暂停执行。

  • 22 SIGTTOU:与SIGTTIN类似,在后台的进程向终端输出数据时产生。

  • 23 SIGURG:套接字上出现紧急情况时产生。向当前正在运行的进程发出些信号,报告有紧急数据到达,如网络带外数据到达。

  • 24 SIGXCPU:超过CPU时间资源限制时产生的信号。

  • 25 SIGXFSZ:当进程企图扩大文件以至于超过文件大小资源限制时产生。

  • 26 SIGVTALRM:虚拟使用信号。计算的是进程占用CPU调用的时间。

  • 27 SIGPROF:包括进程使用CPU的时间以及系统调用的时间。

  • 28 SIGWINCH:窗口大小改变时。

  • 29 SIGIO:文件描述符准备就绪,表示可以进行输入输出操作。

  • 30 SIGPWR:电源失效信号,即关机。

  • 31 SIGSYS:非法的系统调用。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/一键难忘520/article/detail/959511
推荐阅读
相关标签
  

闽ICP备14008679号