Linux/unix系统信号知识扩展,kill这个单词为什么表示信号 ?

在Unix和类Unix系统中,kill命令用于向进程发送信号。这里的"kill"一词并不是指字面上的"杀死",而是表示发送一个信号给进程。 历史上,Unix系统的设计者选择了"kill"这个词作为命令的名称,是因为在早期的Unix系统中最常用的信号是SIGKILL,它用于强制终止进程的执行。因此,"kill"这个词被用来表示发送信号给进程,包括终止进程的意思。 随着时间的推移,Unix系统中的信号数量增加,kill命令也支持发送其他信号,如SIGTERM、SIGHUP等。无论是终止进程、重启进程还是发送其他信号,都可以使用kill命令来实现。 因此,尽管"kill"这个词在字面上可能会引起误解,但在Unix和类Unix系统中,它已经成为了发送信号的通用命令。

Linux系统里所有信号如下:

 1) SIGHUP     2) SIGINT     3) SIGQUIT     4) SIGILL     5) SIGTRAP
 6) SIGABRT     7) SIGBUS     8) SIGFPE     9) SIGKILL    10) SIGUSR1
11) SIGSEGV    12) SIGUSR2    13) SIGPIPE    14) SIGALRM    15) SIGTERM
16) SIGSTKFLT    17) SIGCHLD    18) SIGCONT    19) SIGSTOP    20) SIGTSTP
21) SIGTTIN    22) SIGTTOU    23) SIGURG    24) SIGXCPU    25) SIGXFSZ
26) SIGVTALRM    27) SIGPROF    28) SIGWINCH    29) SIGIO    30) SIGPWR
31) SIGSYS    34) SIGRTMIN    35) SIGRTMIN+1    36) SIGRTMIN+2    37) SIGRTMIN+3
38) SIGRTMIN+4    39) SIGRTMIN+5    40) SIGRTMIN+6    41) SIGRTMIN+7    42) SIGRTMIN+8
43) SIGRTMIN+9    44) SIGRTMIN+10    45) SIGRTMIN+11    46) SIGRTMIN+12    47) SIGRTMIN+13
48) SIGRTMIN+14    49) SIGRTMIN+15    50) SIGRTMAX-14    51) SIGRTMAX-13    52) SIGRTMAX-12
53) SIGRTMAX-11    54) SIGRTMAX-10    55) SIGRTMAX-9    56) SIGRTMAX-8    57) SIGRTMAX-7
58) SIGRTMAX-6    59) SIGRTMAX-5    60) SIGRTMAX-4    61) SIGRTMAX-3    62) SIGRTMAX-2
63) SIGRTMAX-1    64) SIGRTMAX    

  1. SIGHUP: Hangup信号。通常用于指示进程重新加载其配置或重启。用于通知进程终止或重新加载配置文件。

  2. SIGINT: Interrupt信号。当用户按下中断键(通常是Ctrl+C)终止进程时发送给进程。由终端发送给前台进程组的中断信号,通常由Ctrl+C触发。

  3. SIGQUIT: Quit信号。当用户按下退出键(通常是Ctrl+\)终止进程并生成核心转储文件以供调试时发送给进程。类似于SIGINT,但由键盘上的QUIT字符(通常是Ctrl+\)触发。

  4. SIGILL: Illegal instruction信号。当进程尝试执行非法、格式错误或未知的机器指令时发送给进程。检测到非法指令时发送给进程的信号。

  5. SIGTRAP: Trap信号。通常由调试和分析工具使用,以在特定点中断进程以进行分析。用于调试目的,在进程执行时触发断点。

  6. SIGABRT: Abort信号。发送给进程请求异常终止,通常由进程自身或其他进程在检测到关键错误时发出。由进程自己发出的异常终止信号。

  7. SIGBUS: Bus error信号。当进程执行不正确对齐的内存访问或遇到总线上的硬件错误时发送给进程。检测到内存访问错误时发送给进程的信号。

  8. SIGFPE: Floating-point exception信号。当进程执行错误的算术操作,如除以零或溢出/下溢条件时发送给进程。检测到浮点运算异常时发送给进程的信号。

  9. SIGKILL: Kill信号。用于立即终止进程,进程无法捕获或忽略该信号。用于强制终止进程的信号,无法被捕获或忽略。

  10. SIGUSR1: User-defined信号1。这是一个由用户定义的信号,可以用于应用程序特定的目的。用户自定义的信号1。

  11. SIGSEGV: Segmentation fault信号。当进程执行无效的内存访问,如访问未分配或受保护的内存区域时发送给进程。检测到无效的内存访问时发送给进程的信号。

  12. SIGUSR2: User-defined信号2。类似于SIGUSR1,这是另一个由用户定义的信号,用于应用程序特定的目的。用户自定义的信号2。

  13. SIGPIPE: Broken pipe信号。当进程尝试写入已在另一端关闭的管道或套接字时发送给进程。当进程向一个已关闭的管道写入时发送给进程的信号。

  14. SIGALRM: Alarm clock信号。通常用于通过使用alarm()系统调用设置闹钟来安排和处理定时器事件。由alarm()函数或setitimer()函数设置的定时器到期时发送给进程的信号。

  15. SIGTERM: Terminate信号。这是一个通用信号,用于请求以正常的方式终止进程,在退出之前给进程一个清理的机会。用于请求进程正常终止的信号。

  16. SIGSTKFLT: Stack fault信号。当协处理器栈溢出或栈下溢发生时触发。协处理器栈错误。

  17. SIGCHLD: Child status信号。当子进程终止或停止时发送给父进程。当一个子进程终止或停止时发送给父进程的信号。

  18. SIGCONT: Continue信号。发送给进程,指示它在被暂停后继续执行,通常是对SIGSTOP或SIGTSTP信号的响应。用于恢复被停止的进程的执行。

  19. SIGSTOP: Stop信号。用于立即暂停进程,类似于SIGTSTP,但无法被进程捕获或忽略。用于暂停进程的执行,无法被捕获或忽略。

  20. SIGTSTP: Terminal stop信号。当用户按下挂起键(通常是Ctrl+Z)暂停进程并将其放入后台时发送给进程。由终端发送给前台进程组的停止信号,通常由Ctrl+Z触发。

  21. SIGTTIN: Terminal input信号。在后台进程尝试从终端读取时发送给进程。当后台进程组尝试读取终端输入时发送给它们的信号。

  22. SIGTTOU: Terminal output信号。在后台进程尝试写入终端时发送给进程。当后台进程组尝试写入终端输出时发送给它们的信号。

  23. SIGURG: Urgent data信号。当套接字上到达紧急(带外)数据时发送给进程。当一个套接字上接收到紧急数据时发送给进程的信号。

  24. SIGXCPU: CPU time limit exceeded信号。当进程超过其分配的CPU时间限制时发送给进程。当进程的CPU时间限制超过时发送给进程的信号。

  25. SIGXFSZ: File size limit exceeded信号。当进程尝试写入超过最大允许大小的文件时发送给进程。当进程的文件大小限制超过时发送给进程的信号。

  26. SIGVTALRM: Virtual timer alarm信号。类似于SIGALRM,用于安排和处理虚拟定时器事件。类似于SIGALRM,但基于虚拟时间。

  27. SIGPROF: Profiling timer alarm信号。通常由分析工具使用,但用于进程性能分析。

  28. SIGWINCH:窗口尺寸调整信号。当终端窗口的尺寸改变时,向前台进程组的所有进程发送该信号。

  29. SIGIO:I/O 可用信号。用于通知进程有关文件描述符上的异步 I/O 可用的事件,如数据可读或可写。

  30. SIGPWR:电源中断信号。当系统的电源出现故障或发生电源异常时,向所有进程发送该信号,通常用于优雅地关闭系统。

  31. SIGSYS:非法系统调用信号。当进程执行了一个无效的系统调用时,通常由操作系统发送该信号.

  32. 34) SIGRTMIN    35) SIGRTMIN+1    36) SIGRTMIN+2    37) SIGRTMIN+3
    38) SIGRTMIN+4    39) SIGRTMIN+5    40) SIGRTMIN+6    41) SIGRTMIN+7    42) SIGRTMIN+8
    43) SIGRTMIN+9    44) SIGRTMIN+10    45) SIGRTMIN+11    46) SIGRTMIN+12    47) SIGRTMIN+13
    48) SIGRTMIN+14    49) SIGRTMIN+15    50) SIGRTMAX-14    51) SIGRTMAX-13    52) SIGRTMAX-12
    53) SIGRTMAX-11    54) SIGRTMAX-10    55) SIGRTMAX-9    56) SIGRTMAX-8    57) SIGRTMAX-7
    58) SIGRTMAX-6    59) SIGRTMAX-5    60) SIGRTMAX-4    61) SIGRTMAX-3    62) SIGRTMAX-2
    63) SIGRTMAX-1    64) SIGRTMAX  
    这是用户定义的实时信号之一,用于应用程序特定的目

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值