我正在从头开始编写操作系统以在 qemu 下运行,并设置了 HPET 计时器。为了每 1 毫秒打勾,我设置了:
frequency = 10^15 / counter_clock_period;
ticks = frequency / 1000;
滴答声是每 1 毫秒。frequency
是 100000000(打印到控制台)。
我现在想每 1 纳秒打勾。如果频率是frequency = 100000000
我认为它们是 10 ns,我可以除以 10 得到 1ns,但是这不起作用并且时间变得非常慢。我试图除以 1000000,但它仍然算不上时间。如何获得正确的ticks
值,frequency
以便每 1 纳秒滴答一次?