微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

linux – 为什么在有PIT可用时需要TSC

我正在阅读 “Understanding Linux Kernel”,其中有三个时钟

>实时时钟
>时间戳计数器(TSC)
>可编程间隔定时器(PIT)

关于这些我几乎没有问题.

>为什么计算机开机后不使用实时时钟?
>系统运行时是否正在运行?
> TSC寄存器使用PIT,那么为什么我们需要基于TSC寄存器的时序?
>来自/ proc / interrupts的IRQ8的值为cpu0和0给出1
对于其他人,即使在系统运行一段时间后也是如此.为什么
IRQ8只有一个中断,即实时时钟.

这不是一个功课问题

解决方法

> RTC不经常使用,因为它的寄存器访问速度很慢.
> RTC始终在运行(这就是为什么它有自己的电池).但是,现在它的唯一目的是在系统不运行时保持时间.
>可以比PIT更快地访问TSC.
>内核总是尝试使用可以以最有效的方式编程的定时器,因此一旦检测到后者,它就会从PIT切换到cpu本地的基于TSC的定时器( local APIC timer). 在/ proc / interrupts中,LAPIC中断没有数字但名为LOC.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐