如何以编程方式获取OS X上给定PID的打开文件描述符列表?

时间:2013-03-23 05:01:20

标签: c macos pid file-descriptor

我见过的所有内容都说使用lsof -p,但我正在寻找一些不需要fork / exec的东西。

例如在Linux上,可以简单地走/proc/{pid}/fd

1 个答案:

答案 0 :(得分:8)

您可以use proc_pidinfo使用PROC_PIDLISTFDS选项枚举给定流程使用的文件。然后,您可以使用proc_pidfdinfo选项依次对每个文件使用PROC_PIDFDVNODEPATHINFO以获取其路径。