使用任何系统调用查找系统空闲时间(以微秒为单位)

使用任何系统调用查找系统空闲时间(以微秒为单位)

为了进行性能分析并根据系统和应用程序性能做出决策,我需要找到系统的空闲时间。我想要以微秒为单位的精确值。

我知道我可以使用 procfs /proc/uptime 获取 jiffies 的值,但我听说读取 procfs 会产生额外的开销,并且可能会很慢,因为这些文件是按需创建的。

如果我错了,请纠正我,但这个值以 jiffies 为单位,它不如函数clock_gettime返回的值精确,我用函数clock_gettime来查询系统正常运行时间(CLOCK_BOOTTIME)、进程和线程在内核和系统中花费的时间。同样的情况也适用于 /proc/stat (值以 jiffies 为单位)

我正在询问任何其他方法来查询进程空闲时间,并且由于其他值(正常运行时间。内核/用户空间时间以微秒为单位),所以我只期望空闲时间以微秒为单位。

任何帮助和意见将不胜感激。

相关内容