/proc 中的“self”是什么意思?

/proc 中的“self”是什么意思?

在这个问题中:默认分配的文件描述符3是什么?被使用/proc/self/fd,它取消引用/proc/32157/fd.是这样吗pid?为什么我不能echo $self?我以前从未见过self

答案1

/proc树是动态生成的操作系统的窗口。当进程引用 时/proc/self,内核会self使用调用者的pid.这样就可以避免进程对自身进行 pid 查找,但是/proc/{pid}如果您已经知道的话,您可以通过执行 pid 查找来获取相同的信息节点pid

Unix 的优点之一是它如何将所有这些东西统一在/根命名空间下,并使它们表现得像文件和目录,即使它们不是真正的物理文件系统。

你不能回显,$self因为这是一个完全不同的概念:做一个echo $[varname]是 shell 的事情:你的 shell 有维护状态的“环境变量”。这与文件系统无关/proc

相关内容