【发布时间】:2016-02-01 08:38:14
【问题描述】:
我是操作系统新手,在学习 Linux 信号处理时遇到了一些问题。
在 Linux 中,如果在诸如 pause() 之类的系统调用期间有信号到达,程序将切换到内核模式并运行信号处理程序。然后根据处理函数,程序将执行函数告诉它执行的任何操作。如果系统调用很重要并且不能/不应该被中断怎么办? (或者是否存在这种不能被信号中断的系统调用?)
另外,如果一个信号在内核处理另一个更早到达的信号时到达会发生什么?以后会捕获新信号吗?
非常感谢!
【问题讨论】:
-
您的问题相当广泛,其中包含多个问题。信号处理程序是一个广泛的主题,所以也许您可以编辑它以突出显示您要问的问题,只需要一两个实际问题......(顺便说一句,信号处理程序不在内核模式下运行。)跨度>