1 基本概念
定时机制连同一些更可见的内核活动(如检查超时)来驱使进程切换。
两种主要的定时测量:
- 保存当前的时间和日期,以便能通过time(), ftime()和gettimeofday()系统调用把它们返回给用户程序。
- 维持定时器,这种机制能够告诉内核或用户程序某一时间间隔已经过去了。
定时测量是由基于固定频率振荡器和计数器的几个硬件电路完成的。
2 时钟和定时器电路
时钟电路用于跟踪当前时间和产生精确的时间度量。
定时器电路由内核编程,所以它们以udingde,预先定义的频率发出中断。
时钟电路的分类
- 用于跟踪当前时间
- 实时时钟RTC
- 时间戳计数器TSC
- 产生周期性的时钟中断,用于计时
- 可编程间隔定时器PIT
2.1 实时时钟RTC——IRQ8上产生中断
当PC被切断电源,RTC还继续工作。
内核通过0x70和0x71I/O端口访问RTC。
能在IRQ8上发出周期性的中断,频率在2HZ~8192HZ之间,可编程