如何获取驻留在与任何打开的文件描述符关联的文件描述符表中的文件描述符标志“fd flags”?我想知道在不使用 fcntl 函数或查看/proc 条目的情况下手动编写代码,或者至少要进一步研究哪些函数和结构。
下图显示给定进程的文件描述符表有一个标志字段和一个文件指针字段。我如何以编程方式访问这些字段?
最佳答案
您可以访问 /proc/PID/fdinfo/FD
文件,其中包含八进制的 flags
:
$ cat /proc/$$/fdinfo/0
pos: 0
flags: 0100002
mnt_id: 20
在此示例中,0100002 = O_LARGFILE|O_RDWR
关于c - 手动获取Linux文件描述符表信息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46753127/