正常运行时间是如何计算的?

sam*_*sam 3 uptime

我想知道uptime是如何计算的。

这仅仅是现在和启动时间之间的区别吗?更具体地说——如果我开机,运行5分钟,然后让机器休眠一年;恢复后,我的uptime节目是 5 分钟,还是 1 年零 5 分钟?

我发现手册页中的措辞在这一点上有点含糊:

正常运行时间 - 告诉系统运行了多长时间。

Tho*_*key 6

这取决于您所谈论的系统。对于基于 Linux 的系统,您可能正在使用uptimefrom procps,它从/proc/uptime.

要查看这一点,请阅读其Git 存储库中的源代码,例如uptime.c,它使用proc/sysinfo.c

根据CentOS 文档

3.2.30. /过程/正常运行时间

此文件包含详细说明系统自上次重新启动以来已运行多长时间的信息。/proc/uptime 的输出非常小:

350735.47 234388.90

第一个数字是系统启动的总秒数。第二个数字是机器空闲的时间,以秒为单位。

但是中的源代码uptime.c忽略了空闲值。因为系统已开机,我希望它能够反映经过的时间。