写点什么

Linux 内核将支持开箱即用的实时调度特性

作者:Sergio De

  • 2024-11-07
    北京
  • 本文字数:979 字

    阅读完需:约 3 分钟

Linux 内核将支持开箱即用的实时调度特性

Linux 6.12 将在其主线中正式包含对实时调度特性的支持,这要归功于一项 PR,该 PR 在所有受支持的架构上启用了 PREEMPT_RT。虽然它针对的是需要确定性时间保证的应用程序,如航空电子、机器人、汽车和通信应用,但它也可以改善桌面端的用户体验。


PREEMPT_RT 自 2005 年开始开发,是一组针对 Linux 的补丁,实现了硬实时和软实时计算功能。它使 Linux 内核完全可抢占,并能够在 x86、x86_64、RISC-V 和 ARM64 架构上以确定的时间和低延迟响应外部事件。


虽然 PREEMPT_RT 已经可以单独用于修补 Linux 内核,但它在主线中的引入意味着现在只需在编译时启用 CONFIG_PREEMPT* 选项即可构建实时 Linux 内核。但最重要的是,将 PREEMPT_RT 集成到主线也意味着要完善许多功能,才能使其在大多数情况下都能正常运行。


一项重要的工作涉及 printk 函数,该函数对于内核开发至关重要,但尚未完全为实时做好准备。该函数由 Linus Torvalds 开发,可确保开发人员准确知道崩溃发生的位置。但是,它的旧实现引入了一些延迟,影响了低延迟目标的达成,不过这一延迟现在已经被移除了。


在 PREEMPT_RT 成为内核的一部分之前,运行实时 Linux 的最简单方法是使用 Ubuntu Pro,个人和小规模商业用途可免费使用该版本,但超过五台机器则需付费。


需要强调的是,实时与性能无关,而是与可预测(即确定性)任务抢占有关,有些应用程序依赖某些在外部事件发生后的一定时间内必须发生的操作,实时性对它们非常重要。普通的 Linux 内核经过优化,可最大程度地提高硬件利用率并公平地分配所有进程的时间,但也可以对其进行配置,从而最小化能耗或适应特定任务的要求(又称利用率限制)。


Hacker News 用户 femto 称,运行实时 Linux 可以将每个 CPU 核心的中断延迟从两位数毫秒降低到个位数毫秒。不过,这要求你同时运行具有实时策略(SCHED_FIFO 或 SCHED_RR)的调度程序,以防止触控板触摸等硬件事件妨碍实时任务(例如播放音频或 3D 游戏)。


其他人还提到,使用实时内核似乎可以改善用户体验,避免 Gnome 偶尔出现死机,并且可以在运行 Chrome 和游戏时合成更多乐器。Mixxx 音频播放器还建议启用实时调度(以及其他功能),以减少音频延迟并避免出现可听见的故障。


Linux 6.12 的最终版本预计将于 2024 年 11 月中旬或 11 月底发布,而候选版本 2 目前可供测试。


查看原文链接:

https://www.infoq.com/news/2024/10/linux-6-12-real-time/

2024-11-07 08:068548

评论

发布
暂无评论

自定义对象池实践

FunTester

一站式大数据开发与治理产品实践

Jackchang234987

元数据 大数据平台 数据开发平台 数据中台数据治理

山东省正规等保测评机构名称以及地址一览表

行云管家

等保 山东 等级保护 等保测评

ECS公网连接指南:精明选择公网IP计费策略

Geek_2d6073

敏捷开发:想要快速交付就必须舍弃产品质量?

敏捷开发

项目管理 Scrum 敏捷开发 产品研发 研发

大文件上传实践分享

京东科技开发者

一文掌握Trello:功能解析、与其他工具优劣对比及高效使用技巧

爱吃小舅的鱼

任务管理工具 Trello

SpringBoot集成ElasticSearch,实现模糊查询,批量CRUD,排序,分页,高亮...

Java技术精选

日立公司采用元太科技电子纸实现了无纸化营运

财见

reduce函数20个高级用法 看看你掌握了多少?

高端章鱼哥

最新 Apifox 3 月更新:详解多分支升级、Query 参数支持枚举、自定义快捷键

Apifox

程序员 Apifox API 接口工具 API 工具

如何轻松管理你的海外主机?实用技巧大公开!

一只扑棱蛾子

海外主机

CQ 社区版2.10.0 | 新增 SQL 审核、全新英文版上线…

BinTools图尔兹

mongodb mongo 数据库管理 SQL审核 SQLite编辑器

库存控制秘诀:鞋服品牌如何避免库存积压风险

第七在线

保障校园网络安全用堡垒机的几个原因分析

行云管家

网络安全 数据安全 堡垒机 等保合规 校园

是什么阻碍了你的成长

老张

个人成长 职场成长

“专业敏捷教练课程” 6月1-2日 · CSP-SM认证周末班【晋升高阶享多重福利】

ShineScrum捷行

比 MyBatis 效率快 100 倍...

Java技术精选

OLAP性能再获突破!火山引擎ByteHouse性能白皮书发布

Geek_2d6073

聊聊我做测试开发的十年心路历程

阿里技术

测试 开发

新版Redis不再“开源”,对使用者都有哪些影响?

华为云开发者联盟

数据库 redis 华为云 华为云开发者联盟 华为云GeminiDB

TikTok直播专线是什么?有什么用?

Ogcloud

海外直播专线 海外直播 tiktok直播 tiktok直播专线 海外直播网络

阿里云实时计算Flink的产品化思考与实践【上】

Apache Flink

大数据 flink 实时计算

分享一些大数据处理算法

宇文辰皓

大数据

软件测试学习笔记丨Allure2报告中添加附件-日志

测试人

软件测试 测试开发

学算法要读《算法导论》吗?

京东科技开发者

DevOps迈向标准化,平台工程让开发运维更轻松

SEAL安全

DevOps 运维 平台工程

PostgreSQL数据迁移至Doris:一站式解决方案

NineData

postgresql Doris 实时数据分析 实时同步 NineData

ChatTuGraph:通过大模型“与图对话”

TuGraphAnalytics

graph FineTuning Text2GQL

同城双活:交易链路的稳定性与可靠性探索

得物技术

Java 后端 中间件 双活

亚马逊云科技携手埃森哲、Anthropic助力企业打造负责任的AI

财见

Linux 内核将支持开箱即用的实时调度特性_云原生_InfoQ精选文章