会员
周边
新闻
博问
闪存
赞助商
YouClaw
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
gecpyy
博客园
首页
新随笔
联系
订阅
管理
2026年5月4日
为低延迟操作优化Linux OS
摘要: 为什么用Linux做实时应用开发 比传统 RTOS(VxWorks/ThreadX)生态强、网络好、驱动全、可跑复杂协议+边缘计算+AI,同时做到 10–200μs 确定性延迟。 realtime linux的应用很多,有以下这些, 具体应用场景问下AI就可以,我就不在这大段的粘贴AI的回答了:)
阅读全文
posted @ 2026-05-04 14:13 gecpyy
阅读(136)
评论(0)
推荐(0)
2026年5月3日
PREEMPT_RT 技术实现:Threaded interrupt handler
摘要: 中断线程化,使得高优先级的中断变成了普通的内核线程,和其他程序共用CPU,通过优先级来决定谁能够获取CPU的使用权。将一些不重要的中断改在线程中执行,只要RT任务优先级比中断线程优先级高,就可以优先执行,以此来提高系统的实时性能。 传统主线内核默认中断行为 普通硬中断上下文:关闭硬件中断,同时隐式禁
阅读全文
posted @ 2026-05-03 23:33 gecpyy
阅读(64)
评论(0)
推荐(0)
PREEMPT_RT 技术实现:local_lock
摘要: 内核锁在PREEMPT_RT中的实现变化 内核锁分为三类:睡眠锁、CPU本地锁、自旋锁,PREEMPT_RT 会改变部分锁的类型与语义。 睡眠锁 只能在可抢占任务上下文获取,尽量不要在中断/禁止抢占上下文使用。 包含:mutex/rt_mutex/semaphore/rw_semaphore/ww_
阅读全文
posted @ 2026-05-03 11:01 gecpyy
阅读(78)
评论(0)
推荐(0)
2026年5月2日
PREEMPT_RT 技术实现:Sleeping spinlocks
摘要: 了解Sleeping spinlocks之前,我先简单介绍一下spinlock Spinlock(自旋锁) 自旋锁是 Linux 内核最基础的互斥锁,用来保护临界区:同一时刻只能有一个线程/CPU 进入临界区。 核心特点: 拿不到锁时不阻塞休眠、不放弃 CPU 在原地循环忙等(自旋),一直轮询直到锁
阅读全文
posted @ 2026-05-02 16:38 gecpyy
阅读(18)
评论(0)
推荐(0)
PREEMPT_RT 技术实现:rt_mutex
摘要: 目录实时系统中的优先级反转问题一、定义二、产生原因三、带来的影响四、解决方法rt_mutex的作用及使用特性使用方法注意事项 2006 年内核峰会接受了将实时相关组件合并到主线的计划,随后作为实时补丁集(PREEMPT_RT)的一部分,rt_mutex在 Linux 2.6.18 版本中被合并到内核
阅读全文
posted @ 2026-05-02 15:57 gecpyy
阅读(71)
评论(0)
推荐(0)
2026年4月22日
PREEMPT_RT 技术实现:RCU
摘要: RCU (Read-Copy Update, 读 - 复制 - 更新) 是 Linux 内核中一种专为 读多写少 场景优化的高性能同步机制。它的核心优势是:读操作完全无锁、零开销,写操作通过延迟回收保证安全,极大提升多核并发效率。 一、核心原理 RCU 将更新操作拆分为 移除(替换) 和 回收(释放
阅读全文
posted @ 2026-04-22 16:00 gecpyy
阅读(112)
评论(0)
推荐(0)
PREEMPT_RT 技术实现:High resolution timers
摘要: 高分辨率定时器可实现高精度定时调度,摆脱对周期性系统节拍(jiffies)的依赖。 使用高分辨率定时器只需新版 glibc,内核开启后,nanosleep、POSIX 定时器等接口自动升级为高精度模式,无需修改应用代码。 kernel config: config HIGH_RES_TIMERS b
阅读全文
posted @ 2026-04-22 15:57 gecpyy
阅读(18)
评论(0)
推荐(0)
PREEMPT_RT 概述
摘要: preempt_rt补丁的技术细节,可以在linuxfoundation的网站Technical details of the real-time preemption上了解到。根据网站上的介绍,大致分为下面这些: High resolution timers Threaded interrupt
阅读全文
posted @ 2026-04-22 15:52 gecpyy
阅读(28)
评论(0)
推荐(0)
实时性的评价指标
摘要: latency 延迟(Latency):指事件触发时刻到系统真正开始响应处理该事件之间的时间间隔。 下图是我通过cycletest测试绘制的延迟图,记录了每个cpu核上任务的调度延迟: 下图是Linux PREEMPT_RT 内核实时任务全链路抢占延迟拆解时序图,完整展示了从定时器触发,到实时任务最
阅读全文
posted @ 2026-04-22 15:46 gecpyy
阅读(15)
评论(0)
推荐(0)
real-time linux的一些基础概念
摘要: 核心认知:实时 ≠ 速度快 实时系统(Real Time)的关键不是单纯跑得快,而是确定性(可预测性)。 RTOS(实时操作系统)可以保证不错的整体吞吐性能,但会主动牺牲部分整体吞吐量,来换取行为的绝对可预测、时延可控。 一般有两种分类: 硬实时(Hard Real-Time) 定义:系统必须在预先
阅读全文
posted @ 2026-04-22 15:41 gecpyy
阅读(24)
评论(0)
推荐(0)
下一页
公告