Chinaunix

标题: unix下如何通过进程ID获取进程名? [打印本页]

作者: ehuangmy    时间: 2006-10-23 13:33
标题: unix下如何通过进程ID获取进程名?
请问,unix下如何通过进程ID获取进程名?听说可以打开进程表进行枚举,具体应该怎么做呢?google了很久,没有找到想要的方法。谢谢
作者: flw2    时间: 2006-10-23 13:36
linux:
如果是用户态,找/proc
内核态,最容易想到的就是遍历task链表.
作者: ehuangmy    时间: 2006-10-23 13:53
谢谢,我现在想到,可以先找到/proc/下进程对应的文件,stat获取stat结构,就可以获得文件名了
作者: flw2    时间: 2006-10-23 14:00
原帖由 ehuangmy 于 2006-10-23 13:53 发表
谢谢,我现在想到,可以先找到/proc/下进程对应的文件,stat获取stat结构,就可以获得文件名了


你打开proc看看,不是象你那样,是直接读里面文件的内容.
作者: lenovo    时间: 2006-10-23 14:18
count = readlink( "/proc/self/exe", buf, MAXBUFSIZE );
把buf里面的内容打印看看是什么。
作者: ehuangmy    时间: 2006-10-24 19:36
问题已经解决,谢谢各位
作者: cjaizss    时间: 2006-10-25 11:13
这种方法操作系统相关,不过也只好不同的操作系统找不同的方法。
其实我觉得ps,grep有的时候移植性还强很多




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2