在用户空间程序Linux内核模块信号终止(Linux kernel module signal on

2019-08-17 06:19发布

我不知道是否有当一个用户空间应用程序/处理被杀害,被解雇,可以在Linux内核模块中使用的钩?

Answer 1:

你可以先注册你的内核模块中的通知链。

里面get_signal_to_deliver核心/ signal.c), 刚刚 (这是一个相对的概念恕我直言)被杀死已被设置了PF_SIGNALED标志的任何进程。 在这里,你可以用它TCOMM场像这样检查当前进程的名称:

char tcomm[sizeof(current->comm)];
get_task_comm(tcomm, current);

如果它确实是受到质疑的过程中,你可以只解雇通知链,这将唤醒你的模块,它一直在等待上链。



文章来源: Linux kernel module signal on userspace process killed