`/proc` 中的哪些文件提供以下信息?

`/proc` 中的哪些文件提供以下信息?

https://unix.stackexchange.com/a/492346/674

/proc Linux 等内核和 BSD 内核通过和中的文件提供有关进程的四个(相关)信息sysctl()

  • 它的程序映像简称,又名用于流程记账的简称;
  • 它的参数字符串,由execve()运行时初始化并可修改;
  • 它的环境字符串,由execve()运行时初始化并可修改;和
  • 其可执行程序映像文件的完整路径名。

中的哪个文件/proc(以及 的哪些参数sysctl())提供了这四条信息中的每一条?谢谢。

答案1

在 Linux 上:

  • 它的程序映像简称,又名用于流程记账的简称;
/proc/<pid>/comm
  • 它的参数字符串,由 execve() 初始化并在运行时可修改;
/proc/<pid>/cmdline
  • 它的环境字符串,由 execve() 初始化并在运行时可修改;和
/proc/<pid>/environ
  • 其可执行程序映像文件的完整路径名。
/proc/<pid>/exe

(这是文件的符号链接)。

这些文件的其他技术细节可以在man 5 proc

在 FreeBSD 上:

  • 它的程序映像简称,又名用于流程记账的简称;
  • sysctl()CTL_KERNKERN_PROCKERN_PROC_ALL/ KERN_PROC_PROCOID。
  • 可转储与sysctl -x kern.proc.all
  • 中的字段之一。/proc/PID/status
  • (如果安装了兼容性) 中的字段之一。/compat/linux/proc/PID/status
  • 它的参数字符串,由 execve() 初始化并在运行时可修改;
  • sysctl()CTL_KERNKERN_PROCKERN_PROC_ARGSOID。
  • 还。/proc/PID/cmdline
  • (如果安装了兼容性)。/compat/linux/proc/PID/cmdline
  • 它的环境字符串,由 execve() 初始化并在运行时可修改;和
  • sysctl()CTL_KERNKERN_PROCKERN_PROC_ENVOID。
  • (如果安装了兼容性)。/compat/linux/proc/PID/environ
  • 其可执行程序映像文件的完整路径名。
  • /proc/PID/file(这是文件的符号链接)。
  • (如果安装了兼容性)。/compat/linux/proc/PID/exe

相关内容