加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Linux > 正文

linux-kernel – 在Linux中命名的进程的时间和位置

发布时间:2020-12-13 22:54:16 所属栏目:Linux 来源:网络整理
导读:我一直在尝试遵循 Linux上的流程创建流程. 到目前为止,我已经安装了一些调试printk来了解Linux内核上的pid分配. 但是,现在我希望在创建(或执行)时将PID映射到二进制文件. 我知道Linux创建进程的方式是通过分离init然后执行exec ..或直接从init执行exec. 我正
我一直在尝试遵循 Linux上的流程创建流程.
到目前为止,我已经安装了一些调试printk来了解Linux内核上的pid分配.
但是,现在我希望在创建(或执行)时将PID映射到二进制文件.

我知道Linux创建进程的方式是通过分离init然后执行exec ..或直接从init执行exec.

我正在尝试跟踪新task_struct上的字段comm的填充时间和位置.
comm字段存储正在执行的二进制文件.
到目前为止,无论我在哪里尝试打印comm字段(在context_switch函数期间除外),所有进程始终将其名称显示为khelper

我已经尝试过广泛调试do_execve函数,但这似乎并不包含与更改comm字段相关的代码.

有人可以指出分配通信字段的位置和时间

解决方法

更正:函数是fs / exec.c中的setup_new_exec,它调用set_task_comm实际上设置了这个字段.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读