Как работает функция часов в операционных системах? - PullRequest
0 голосов
/ 17 ноября 2018

Я не понимаю, как работает функция часов в операционной системе.

Сначала документация для функции часов в www.cplusplus.com:

Returns the processor time consumed by the program.

The value returned is expressed in clock ticks[...] 

Насколько я понимаю,функция часов должна напрямую обращаться к некоторому регистру в ЦП, который является счетчиком циклов ЦП.Как это возможно?Я имею в виду, что любой 32-битный регистр очень скоро переполнится, если его увеличить на единицу с частотой процессора.ОС как-то обрабатывает это переполнение?

1 Ответ

0 голосов
/ 17 ноября 2018

«Тики часов» определяются реализацией, а не в единицах тактовых частот процессора. Исторически они были фиксированными, грубозернистыми временными сроками планирования. Для реализации clock не требуется никакого специального аппаратного TSC. Достаточно просто сосчитать временные интервалы, на которые запланирован процесс (которые в конечном счете приводятся в действие прерыванием по таймеру или подобным).

...