Notes on Understanding the Linux Kernel

第五章 定时测量

硬时钟

内核与三种时钟打交道

  • 实时时钟 Real Time Clock RTC
  • 时间标记计数器 Time Stamp Counter TSC
  • 可编程间隔定时器 Programmable Interval Time PIT

实时时钟

RTC独立于CPU和其他所有芯片,靠小电池供电。Linux获取时间和日期。

时间标记计数器

Linux通过寄存器获得更精确的时间测量。|2^32/f|
f是以Mhz为单位的CPU频率

可编程间隔定时器

通过定时中断来通知内核一个时间间隔已经过去。

CPU的分时

定时中断对于进程共享CPU时间是必不可少的。内核给每个进程分配一个时间片,如果时间片到时,进程没有终止,schedule()函数选择一个新的进程投入运行。

PID为0的进程不与其他进程共享CPU时间,因为当不存在其他的TASK_RUNNING进程时,它才在CPU运行。

定时器的作用

内核和进程广泛使用定时器。大多数设备驱动程序利用定时器检测反常情况。也可以利用定时器在将来某一时刻执行特定的函数。

Linux考虑了三种定时器,静态定时器,动态定时器和间隔定时器。前两种类型由内核使用,而间隔定时器可以由进程在用户态创建。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值