【发布时间】:2018-10-30 09:36:40
【问题描述】:
我想列出打开我的 TTY 驱动程序的用户进程的 PID,以便能够在某些情况下杀死它们。
如何从我的内核模块获取客户端用户进程的 PID?
【问题讨论】:
标签: linux-kernel driver linux-device-driver kernel-module tty
我想列出打开我的 TTY 驱动程序的用户进程的 PID,以便能够在某些情况下杀死它们。
如何从我的内核模块获取客户端用户进程的 PID?
【问题讨论】:
标签: linux-kernel driver linux-device-driver kernel-module tty
当用户进程向您的驱动程序调用一些系统调用时,您处于用户线程上下文中。只需读取当前 pid 并保存即可。
【讨论】:
当用户进程向您的驱动程序调用一些系统调用时,它是在发出系统调用的进程的上下文中这样做的。因此,您应该能够使用全局当前任务结构,即
pid_t mypid;
mypid = current->pid.
【讨论】: