它让我震惊,当我关闭我的机器然后稍后再次启动它时,它如何知道日期和时间而不检查它的服务器(当有互联网连接时它也会检查它)?我正在使用 GNOME 3.20 运行 Ubuntu GNOME 16.04,我突然对此非常好奇。
我的机器中可能有某种时钟,但是如果我要完全关闭机器电源,时钟会误入歧途吗?
You*_*Git 12
不,它不会误入歧途。有一个RTC(实时时钟)芯片:
在由 CR2032 电池供电的主板上,就我而言:
甚至许多笔记本电脑都有内部 CR2032。当我不得不更换其中一台笔记本电脑中的 CPU 风扇时,我发现了这一点。因为拆开实在是太熊了,虽然还没死,我还是把它换了:)
是的,这些电池在 6 年以上确实会耗尽......(当然,您的里程可能会有所不同,具体取决于计算机使用交流电源的时间与仅使用那个小电池的时间。)
奖励材料!
如果您曾经使用 Windows 双启动,并且并不总是连接到 Internet,您会注意到时钟经常出错。这是因为 Ubuntu 使用 UTC 而 Windows 使用 LT。因此,他们都认为连接到互联网时 RTC 的时间是错误的,并将其重置为该操作系统的正确时间。但是当你切换操作系统时,它又发生了!
我相当肯定这就是计算机具有 BIOS 时钟的原因:因此操作系统可以读取它并保持准时。
关闭机器可能会关闭操作系统,但计算机仍处于供电状态,这意味着它仍然可以保持其硬件时钟滴答作响。大多数计算机(甚至笔记本电脑)还安装了手表电池,即使机器的其余部分断电,它也能保持时钟运行。如果这块电池没电了,BIOS 时钟也会重置。
因此,操作系统关闭并停止计数。当您重新启动它时,它会读取硬件时钟并相应地调整其时间(读取 BIOS 时钟的时区,调整 OS 时钟的时区)。除非电池没电,否则硬件时钟将始终开启,因此它始终在计数。