2

是否可以在Linux内核的do_execve_common中获取即将创建的进程的命令行?换句话说,如何从 argv 中提取命令行并将其 printk 到 dmesg。

其次,是否也可以获取进程的pid和父pid?这些信息在 do_execve_common 附近是否可用?

我只需要在内核中做这些事情。

4

1 回答 1

3

我认为在调用 do_execve 时,task_struct 中的 pid & real_parent & comm 字段已经初始化。

所以你可以使用内核函数:getpid()、getppid() 和 get_task_comm() 来得到你想要的。我不确定这些功能是否存在于您的 Linux 内核版本中。如果没有,应该有一些类似的功能。

于 2013-03-07T01:51:25.257 回答