什么是 CPU 滴答声?

Aar*_*ron 43 unix cpu-usage

题:

  • CPU 滴答是如何计算的,它代表什么?
  • 难道一个tick等号10 miliseconds因此,如果某些线程报告没有呼吁(5 * 10 ticks = 500 ticks)这是否意味着CPU也许太忙安排上述线程的工作

sle*_*ske 38

是用于测量内部系统时间的任意的单元。通常有一个操作系统内部计数器用于报价;操作系统的各种功能使用的当前时间和日期来自该计数器。

一个刻度代表多少毫秒取决于操作系统,甚至可能因安装而异。使用操作系统的机制将滴答转换为秒。

至于为什么线程报告它没有被调用:这取决于线程是否在某处阻塞(等待、I/O 等)。如果它没有阻塞,那么是的,操作系统的调度程序将决定它何时开始运行,如果系统繁忙,这可能需要很长时间。

编辑:

请注意,也许不幸的是,一些作者还使用tick作为处理器时钟周期的同义词(例如本文)。我相信这种用法不太普遍,但仍然最好先了解人们在谈论什么。

  • @sleske 嗯,我看到了不同之处。“滴答”曾经是 CPU 周期的同义词,也是“与 CPU 时钟速度无关的恒定时间量”的术语。同一个词有两个意思。那正确吗? (3认同)
  • @Aaron:不,滴答和处理器周期是两个不同的概念。处理器周期长度由硬件决定(CPU频率);刻度线由操作系统生成,并使用操作系统(或其设计者)认为合适的任何长度。 (2认同)