如何定义一个信号并在linux内核代码中捕获它

时间:2012-04-02 20:45:58

标签: linux linux-kernel signals

好吧,我想修改内核,定义一个SIGNAL(让我们说#define SIGHELLO 33)并抓住它(让我们说printk“lalalalala”)。我知道在哪里定义,但未能抓住它。 (程序输出未知信号并终止)我不知道在哪里注入。希望有人知道。

1 个答案:

答案 0 :(得分:0)

您似乎对信号的目的和处理感到困惑。有两个特殊的例外(SIGKILL和SIGSTOP / SIGTSTP),信号在内核中不会得到特殊处理。 (可以使用signal() 在用户空间中捕获它们。)

话虽如此,信号处理在kernel/signal.c。我不相信内核模块可以修改此文件中的行为。