相关疑难解决方法(0)

不同进程中的相同fd如何指向同一个文件?

假设我有process 1process 2。两者都有一个对应于整数 4 的文件描述符。

然而,在每个进程中,文件描述符 4 指向内核打开文件表中的一个完全不同的文件:

在此处输入图片说明

这怎么可能?文件描述符不应该是打开文件表中记录的索引吗?

kernel file-descriptors open-files

30
推荐指数
4
解决办法
3万
查看次数

文件描述符和 /dev/fd

文件描述符在整个进程或整个系统中是唯一的。因为每个文件似乎都对 stdin 和 stdout 使用相同的描述符。这些有什么特别之处吗?标准输入和标准输出如何工作?我意识到dev/fd, 是指向 的链接proc/self/fd,但是它们如何具有相同的编号?

编辑: 即使在查看其他进程后,大多数文件描述符的数字也大致相同。

open-files

7
推荐指数
1
解决办法
2587
查看次数

标签 统计

open-files ×2

file-descriptors ×1

kernel ×1