硬件可以有多个时钟源,时钟源可以通过外部中断触发。
时钟源可以设置定时触发,定时的时间是可编程的,其精度依赖于时钟源本身。调度器可以绑定到多个不同的时钟源上,达到微秒精度定时调度的功能。
但,你问的问题,其实跟调度器、中断都没关系。timestamp和clock在OS层面上不一定是同一个概念(可以是,也可以不是)。
gettimeofday走的是timestamp,不是clock,只需要在调用的时候查一下时钟源的timestamp就可以了,这个时钟源自己可能不会周期性的发出时钟中断,只是自己在那更新自己的timestamp就可以。