/ proc / <pid> / cmdline与进程的argv变量有何关系?

问题描述

当我运行一个进程以及argv [0]的内容时,这也会更改/ proc // cmdline的内容。现在,我在fs / proc / cmdline.c中检查了内核代码,并且那里的cmdline_proc_show函数似乎从全局save_command_line变量获取内容。但是我没有找到save_command_line与argv数组的关系。有人知道吗?

解决方法

文件/proc/cmdline与内核命令行和boot_params中的信息有关。

对于用户进程,在子目录中有cmdline个文件,名称为进程ID /proc/<pid>/cmdline;外壳示例:cat /proc/$$/cmdline。一系列的结构指针导致进程命令行参数;有关详细信息,请参见proc_pid_cmdline_read()

注意:不同发行版中的某些符号可能会有所不同