在 Linux 中,为什么所有进程都有一个全局 /dev/stdin 文件?
In Linux, why is there a global /dev/stdin file for all processes?
不同进程的标准输入不应该是唯一的吗?如果是这样,stdin 文件的路径不应该像 /dev/pid/stdin
而不是全局 /dev/stdin
吗?
有人对此有想法吗?
/dev/stdin
是独一无二的,因为
- 它是一个符号link到
/proc/self/fd/0
/proc/self
是一个符号 link 只有 被你的 运行 进程看到 its进程号
/proc
文件系统是一个虚拟(不是真实) 能够向每个进程显示不同视图的文件系统。
进一步阅读:
不同进程的标准输入不应该是唯一的吗?如果是这样,stdin 文件的路径不应该像 /dev/pid/stdin
而不是全局 /dev/stdin
吗?
有人对此有想法吗?
/dev/stdin
是独一无二的,因为
- 它是一个符号link到
/proc/self/fd/0
/proc/self
是一个符号 link 只有 被你的 运行 进程看到 its进程号
/proc
文件系统是一个虚拟(不是真实) 能够向每个进程显示不同视图的文件系统。
进一步阅读: