【发布时间】:2012-04-07 12:01:15
【问题描述】:
有时我需要检索一些系统数据,如 CPU 使用率、进程信息等。我通常在 /proc/.... 中找到这些数据。我从 C/C++ 中所做的是读取 / proc/...,解析它并获取信息。这很麻烦,并且不知何故取决于内核版本。这是正确的方法吗?
【问题讨论】:
标签: c++ linux linux-kernel
有时我需要检索一些系统数据,如 CPU 使用率、进程信息等。我通常在 /proc/.... 中找到这些数据。我从 C/C++ 中所做的是读取 / proc/...,解析它并获取信息。这很麻烦,并且不知何故取决于内核版本。这是正确的方法吗?
【问题讨论】:
标签: c++ linux linux-kernel
不幸的是,Linux 内核不提供任何可用于检索通过/proc 公开的系统信息的系统调用。在这种情况下,您最好的选择是继续使用该文件系统。
如果它让您感觉更好,所有工具,如top、ps 或htop 都使用/proc 文件系统。如果您在使用时遇到问题,您应该查看他们的来源。
【讨论】: