gpt4 book ai didi

datetime - 现代 PC 的内部时钟有多精确?

转载 作者:行者123 更新时间:2023-12-02 14:27:44 25 4
gpt4 key购买 nike

我知道 10 年前,典型的时钟精度等于系统时钟周期,在 10-30ms 范围内。在过去的几年里,精度得到了多个步骤的提高。如今,有多种方法可以测量纳秒级的时间间隔。然而,通常的框架返回时间的精度仍然只有 15ms 左右。

哪些步骤会降低精度?怎么可能以纳秒为单位进行测量?为什么我们的精度仍然经常低于微秒,例如在 .NET 中?

最佳答案

这确实是 PC 历史上的一个特征。最初的 IBM-PC 使用一种称为实时时钟的芯片,该芯片由电池供电(您还记得需要更换这些电池吗?)这些芯片在机器关闭时运行并保持时间。它们的频率为 32.768 kHz(2^15 周期/秒),这使得在 16 位系统上计算时间变得很容易。然后将该实时时钟写入 CMOS,在旧操作系统中可通过中断系统使用该时钟。

微软和英特尔推出了一项名为“高精度事件定时器”的新标准,指定时钟速度为 10MHz http://www.intel.com/hardwaredesign/hpetspec_1.pdf甚至较新的 PC 架构也采用了这一点并将其置于北桥 Controller 上,并且 HPET 可以调谐到 100MHz 甚至更高。在 10Mhz 下,我们应该能够获得 100 纳秒的分辨率,在 100MHZ 下,我们应该能够获得 10 纳秒的分辨率。

已知以下操作系统无法使用 HPET:Windows XP、Windows Server 2003 以及更早的 Windows 版本、更早的 Linux 版本

已知以下操作系统能够使用 HPET:Windows Vista、Windows 2008、Windows 7、基于 x86 版本的 Mac OS X、使用 2.6 内核和 FreeBSD 的 Linux 操作系统。

使用 Linux 内核,您需要更新的“rtc-cmos”硬件时钟设备驱动程序,而不是原始的“rtc”驱动程序

说了这么多,我们如何获得这个额外的分辨率?我可以从以前的 stackoverflow 文章中剪切和粘贴,但不行 - 只需搜索 HPET,您就会找到有关如何让更精细的计时器工作的答案

关于datetime - 现代 PC 的内部时钟有多精确?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2607263/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com