我希望能够检查一个进程的所有者,这个进程的ID是我在Unix系统上用C得到的。它也需要在cygwin上工作。另外,如果能得到这个进程的创建日期,那就太好了。
我发现有很多方法可以通过在/proc/ /中查找生成的文件。但不幸的是,在cygwin上,你需要正确的权限才能读取这些文件。如果可能的话,我正在寻找一种不使用这些文件或系统命令的方法。我还发现了以下威胁:How to programatically get uid from pid in osx using c++?但它不会工作,因为缺少定义的克恩_PROC,KERN_PROC_PID和一些更多的.(还没有找到库为那些在C中)
所以简而言之:有没有人知道我如何使用c来获得一个特定进程的信息,而不需要系统调用或阅读/proc/中的文件?
1条答案
按热度按时间kjthegm61#
这里是在使用
ps
命令的简单实现下。这当然不是最优雅的,但它应该适用于Unix和Cygwin: