gpt4 book ai didi

unix - Unix 中的信号是什么?

转载 作者:行者123 更新时间:2023-12-03 22:48:07 29 4
gpt4 key购买 nike

这条评论让我感到困惑:“kill -l 通常会列出所有信号”。我认为信号意味着量化的能量。

[已添加] 请澄清 Unix 中的(计算)信号和物理信号。它们是完全不同的概念吗?

[已添加] 范式之间是否存在重大差异? C、Python 和 Haskell 等语言中的含义是否相同?信号似乎是一个通用术语。

最佳答案

手册指的是一种非常基本的机制,它允许进程或操作系统通过发送信号来通知其他进程。操作系统可以使用它来通知程序有关它们的中止(信号 SIGABRT )或有关段错误(通常由访问空指针 SIGSEGV 引起)的情况,仅举两个例子。

一些 unix 服务器使用信号,因此管理员可以使用 kill向他们发送信号,使他们重新读取他们的配置文件,而不需要他们重新启动。

对某些信号采取了默认操作,而其他信号则被忽略。例如接收 SIGSEGV ,程序终止,同时收到 SIGCHLD ,意味着子进程死亡,默认情况下不会导致任何特殊情况。

有一个ANSI C标准函数,它安装了一个信号处理程序,它是一个在接收到信号时可以执行一些代码的函数,叫做signal (阅读 man signal)。在不同的 unix 中,该函数的行为不同,因此不鼓励使用它。其联机帮助页引用了 sigaction函数(读 man sigaction ),其行为一致,也更强大。

关于unix - Unix 中的信号是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/455842/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com