DeviceDriver(五):内核定时器

本文介绍了Linux内核时间管理,包括硬件定时器提供的时钟源、系统节拍率(HZ)以及全局变量jiffies的使用。接着深入探讨了内核定时器的运作机制,如超时处理函数和相关API,强调了定时器的非周期性和如何实现循环。最后给出了实例说明。
摘要由CSDN通过智能技术生成

一:内核时间管理

1、硬件定时器提供时钟源,时钟源的频率可以设置,设置好以后就可以周期性的产生定时中断,系统就可以使用定时中断来计时。中断周期性的产生的频率就是系统频率也叫做节拍率,比如1000Hz,500Hz,100Hz就是系统节拍率。系统节拍率可以设置,在配置Linux内核时可以进行设置,默认值为100Hz也就是10ms,在Linux内核中用“HZ”表示:

# undef HZ
# define HZ		CONFIG_HZ	/* Internal kernel timer frequency */
# define USER_HZ	100		/* some user interfaces are */
# define CLOCKS_PER_SEC	(USER_HZ)       /* in "ticks" like times() */

2、Linux内核使用全局变量jiffies来记录系统从启动以来的系统节拍数,系统启动时会将jiffies初始化为0。

e
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值