首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >仅使用系统调用监视进程活动(不使用“like”之类的实用程序)

问仅使用系统调用监视进程活动(不使用“like”之类的实用程序)
EN

Unix & Linux用户
提问于 2011-04-19 03:18:09
回答 1查看 1.5K关注 0票数 3

我希望通过Linux系统调用获取有关不同用户使用的内存和用户正在运行的不同进程的信息,以及有关内存消耗、执行速度等进程的统计信息。

我不想使用free、top等命令,有人能建议怎么做吗?

EN

回答 1

Unix & Linux用户

发布于 2011-04-19 06:15:17

理解内存是如何使用的是很重要的。内存的很大一部分通常是共享的。程序及其库中使用的任何代码都是在不同进程之间共享的。代码作为只读映射到内存中,并由所有进程共享,因此它不属于任何一个用户。某些库,如libc,几乎每个进程都使用,但只在RAM中加载一次。代码较多的程序将比数据较重的程序具有更多的共享内存。

为了回答您的问题,几乎所有像top、free和ps这样的程序获取的信息都来自扫描/proc文件系统。每个进程都有以它的PID命名的自己的文件夹。其中有许多文件,比如显示内存映射的映射、显示启动进程所执行的命令的comm和显示I/O使用情况的io。/proc在Linux内核文档中有一个介绍。

票数 3
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/11590

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档