如何在Linux中手动将jiffies转换为毫秒,反之亦然?我知道内核2.6有一个功能,但我正在研究2.4(作业),虽然我看了代码它使用了很多宏常量我不知道它们是否在2.4中定义.
我需要在用户空间中使用 C 代码获取进程的启动时间。
该进程将以 root 身份运行,因此我可以 fopen /proc/PID/stat。
我看到了实施,例如:
Linux或http://brokestream.com/procstat.c上进程的启动时间
但它们是无效的,为什么它们是无效的?如果进程第二个参数包含空格,例如:
[ilan@CentOS7286-64 tester]$ cat /proc/1077/stat
1077 (rs:main Q:Reg) S 1 1054 1054 0 -1 1077944384 21791 0 10 0 528 464 0 0 20 0 3 0 1056 321650688 1481 18446744073709551615 1 1 0 0 0 0 2146172671 16781830 1133601 18446744073709551615 0 0 -1 1 0 0 1 0 0 0 0 0 0 0 0 0 0
Run Code Online (Sandbox Code Playgroud)
这些解决方案不会起作用。
除了解析 /proc/PID/stat 结果之外,还有更好的方法检索进程启动时间吗?我可以执行以下逻辑: