Linux系统监视器如何获取进程统计信息

3

我正在制作一个简单的替代默认Linux系统监视器的工具。

我想了解它如何提取进程统计数据,这些数据在“进程”选项卡中显示。

它可能是运行在/proc上,但我不确定。

此外,我在寻找系统监视器程序的源代码,您知道它在哪里可以找到吗?

谢谢!

保罗

另外,我看了一下GNOME系统监视器和类似ps和top的程序,发现代码很难理解,我无法轻松地看出它们实际上如何获取进程统计数据。我认为libproc库可能非常有用,但我在网上找不到任何关于它包含哪些函数的文档。是否有人能够提供或指导我找到相关文档?谢谢...


我的“默认”进程监视器是top,没有选项卡...或者,为了不那么讽刺,你可能想要确定你正在谈论哪个程序。提示:它可能与桌面环境或窗口管理器捆绑在一起。 - dmckee --- ex-moderator kitten
3个回答

2

这些实用工具被捆绑在名为procps的东西中,其源代码可在此处获取。


2

是的,它使用/proc。您可以通过apt下载适用于您的分发版(假设它基于debian)的源代码:

sudo apt-get source gnome-system-monitor

你会在像top这样的工具中有更多的实例,它们被打包在procps中:

sudo apt-get source procps

0
通常,进程信息是从/proc//stat和/proc//statm获取的。 stat和statm中的不同字段在proc的man页中描述(也可以在此处找到:http://linux.die.net/man/5/proc)。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接