Linux中的时钟和定时测量
Linux中的 时钟和定时测量
举例2xlanchen@2007.10.9LinuxOperatingSystemsAnalysis
xlanchen@2007.10.9 Linux Operating Systems Analysis 2 举例
定时测量Linux内核提供两种主要的定时测量获得当前的时间和日期系统调用:time(,ftime以及gettimeofday维持定时器settimerO, alarm(定时测量是由基于固定频率振荡器和计数器的几个硬件电路完成的xlanchen@2007.10.9LinuxOperatingSystemsAnalysis3
xlanchen@2007.10.9 Linux Operating Systems Analysis 3 定时测量 ⚫ Linux内核提供两种主要的定时测量 ⚫ 获得当前的时间和日期 ⚫ 系统调用:time(), ftime()以及gettimeofday() ⚫ 维持定时器 ⚫ settimer(), alarm() ⚫ 定时测量是由基于固定频率振荡器和计数器的 几个硬件电路完成的
主要内容定时的硬件设备Linux内核中与时间有关的程序实现CPU分时、更新系统时间、维护软定时器与定时测量相关的系统调用及相关服务例程xlanchen@2007.10.9LinuxOperatingSystemsAnalysis
xlanchen@2007.10.9 Linux Operating Systems Analysis 4 主要内容 ⚫ 定时的硬件设备 ⚫ Linux内核中与时间有关的程序 ⚫ 实现CPU分时、更新系统时间、维护软定时器 ⚫ 与定时测量相关的系统调用及相关服务例程
硬时钟80x86体系结构上,内核必须显式的与四种时钟打交道实时时钟Real time clock,RTC用于跟踪当前时间时间戳计数器Time stamp counter,TSC可编程间隔定时器Programmable interval timer,PIT产生周期性的时钟中断用于计时SMP系统上的本地APIC定时器xlanchen@2007.10.9LinuxOperatingSystems Analysis5
xlanchen@2007.10.9 Linux Operating Systems Analysis 5 硬时钟 ⚫ 80x86体系结构上,内核必须显式的与四种时 钟打交道 ⚫ 实时时钟Real time clock,RTC ⚫ 时间戳计数器Time stamp counter,TSC ⚫ 可编程间隔定时器Programmable interval timer, PIT ⚫ SMP系统上的本地APIC定时器 用于跟踪 当前时间 产生周期性的时钟中断, 用于计时