2.2 工作队列(Workqueue)与系统线程
内核时间管理基石:从硬件时钟源到jiffies与HZ问题现场:一个诡异的“时间跳跃”上周排查一个线上问题,某嵌入式设备的日志突然出现连续半小时的记录缺失,随后时间戳又恢复正常。查看硬件RTC时间准确,但系统uptime显示有跳变。这种“时间消失”现象直接指向内核时间子系统的底层机制。今天我们就从这个问题切入,聊聊Linux内核如何把硬件时钟源的嘀嗒声,变成驱动整个系统的时间流。硬件时钟源:一切时间的起点内核启动时最早的时间来源于硬件。x86平台有传统的PIT(可编程间隔定时器),现代系统多用HPET(高精度事件定时器)或ACPI电源管理定时器。ARM平台则依赖每个SoC厂商实现的定时器外设,比如STM32的SysTick。关键点在于:硬件只提供周期性中断,不管理时间概念。定时器硬件就像个节拍器,只会规律地发出“嘀嗒”信号,至于这个嘀嗒代表多少纳秒,完全由软件决定。// 典型时钟源初始化代码片段(简化版)void__inittimer_init(void
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2497720.html
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!