news 2026/4/16 17:00:26

19、定时器与时间服务详解

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
19、定时器与时间服务详解

定时器与时间服务详解

1. 硬件定时器原理

定时器是一种硬件设备,由时钟源和可编程计数器组成。时钟源通常是晶体振荡器,它会产生周期性的电信号,以精确的频率驱动计数器。计数器被编程设置一个初始的倒计时值,每收到一个时钟信号,计数器的值就减 1。当计数器的值减到 0 时,它会向 CPU 发出一个定时器中断,然后将初始的计数值重新加载到计数器中,再次开始倒计时。计数器的一个完整周期被称为一个定时器滴答(timer tick),这是系统的基本计时单位。

2. PC 中的定时器

基于 Intel x86 的 PC 有多种定时器:
-实时时钟(RTC):由一个小的备用电池供电,即使 PC 关机也能持续运行。它用于记录实时时间,提供日期和时间信息。Linux 启动时,会使用 RTC 更新系统时间变量,该变量是一个长整型数,表示自 1970 年 1 月 1 日 00:00:00 以来经过的秒数。
-可编程间隔定时器(PIT):是一个独立于 CPU 的硬件定时器,可以被编程为以毫秒级的分辨率提供定时器滴答。在所有 I/O 设备中,PIT 以最高优先级 IRQ0 产生中断。Linux 内核的定时器中断处理程序会处理这些中断,为系统操作(如进程调度、进程间隔定时器等)提供基本的计时单位。
-多核 CPU 中的本地定时器:在多核 CPU 中,每个核心都是一个独立的处理器,都有自己由 CPU 时钟驱动的本地定时器。
-高分辨率定时器:大多数 PC 都有一个时间戳计数器(TSC),由系统时钟驱动。其

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/16 14:43:06

InstallerX实战指南:从安装小白到高手的完整进阶路线

还在为Android应用安装的各种限制而烦恼吗?InstallerX作为一款现代化的Android应用安装工具,能够帮你解决从基础安装到高级配置的所有问题。无论你是新手还是有一定经验的用户,这篇指南都将带你从零开始,逐步掌握这款强大工具的使…

作者头像 李华
网站建设 2026/4/16 14:10:44

Oracle迁移中查询优化器原理解析与实战优化策略

在当前数据库国产化替代加速的背景下,越来越多企业正将核心业务系统从Oracle迁移至自主可控的国产数据库平台。然而,迁移过程中最易被低估却又直接影响业务性能的关键环节之一——查询优化器(Query Optimizer)的行为差异&#xff…

作者头像 李华
网站建设 2026/4/15 11:49:38

用std::string快速构建文本分析原型

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容: 开发一个文本分析工具原型,使用std::string实现:1)读取文本文件;2)统计单词频率;3)找出高频词;4)简单的文本摘要生成。要…

作者头像 李华
网站建设 2026/4/16 18:13:51

Calamari OCR:高效精准的文字识别引擎完整使用指南

Calamari OCR:高效精准的文字识别引擎完整使用指南 【免费下载链接】calamari Line based ATR Engine based on OCRopy 项目地址: https://gitcode.com/gh_mirrors/ca/calamari 想要快速实现OCR文字识别功能?Calamari OCR作为一款基于深度学习的开…

作者头像 李华
网站建设 2026/4/16 15:53:58

Visual C++运行库缺失问题全面解决方案

Visual C运行库缺失问题全面解决方案 【免费下载链接】MicrosoftVisualCRuntime下载指南 Microsoft Visual C Runtime 是微软发布的一个重要组件,它允许运行由Visual C编写的程序。许多应用程序依赖这些运行时库才能正确运行。如果你遇到因为缺失VC运行库导致的应用…

作者头像 李华