瑞芯微RK35XX系列Linux实时性详细测试对比( PREEMPT_RT和Xenomai )

工业控制、工业网关、轨道交通、能源电力等场景,都需要一个运行稳定、可靠的"实时操作系统"。RT-Linux作为一款开源实时性操作系统,拥有实时性内核、开源、免费、功能完善等特性,完美满足了工业场景需求。

本文基于触觉智能旗下瑞芯微RK系列开发板,历经240小时实测!展开RT-Linux实时性系统两大内核:PREEMPT_RT与Xenomai实时性数据测评!

RT-Linux内核简介

  • PREEMPT_RT

PREEMPT_RT是RT-Linux实时性内核补丁,通过增强内核抢占能力、将中断处理线程化、改造锁机制等方式,大幅降低系统延迟峰值(低至微秒级),减少 "不可抢占" 场景,使 Linux 能更好适配工业控制、机器人、自动驾驶等对实时响应要求严苛的场景,目前其核心功能已逐步整合到 Linux 主线内核,可通过配置直接启用。

  • Xenomai

Xenomai是一套为嵌入式系统设计的实时开发框架,通过 "双内核" 架构(在 Linux 内核旁运行实时微内核),为应用提供纳秒级别的硬实时响应能力,同时允许实时任务与 Linux 系统服务协同工作,广泛用于工业自动化、机器人、航空航天等对实时性要求极高的场景,支持多种硬件架构且兼容POSIX 实时接口。

  • 实时性测试环境

测试主板:触觉智能旗下瑞芯微RK35XX系列开发板,包括RK3506、RK3562、RK3568、RK3576、RK3588。

软件测试工具:Cyclictest(通过串口工具命令操作)

RT-Linux系统-PREEMPT_RT内核测试

触觉智能RK3506、RK3562、RK3576、RK3568、RK3588五款开发板,分别在CPU空载、满负荷+核心隔离的三种情况下,运行指令连续测试24小时,数据如下:

  • RK3506系统内核为Linux Kernel6.1.84
  • RK3562-系统内核为Linux Kernel5.10.226
  • RK3568系统内核为Linux Kernel5.10.209
  • RK3576系统内核为Linux Kernel6.1.99
  • RK3588-系统内核为Linux Kernel5.10.226
  • RK系列开发板PREEMPT_RT实测数据对比

RT-Linux系统-Xenomai内核测试

Xenomai与PREEMPT_RT测试方法一致,数据如下:

  • RK3506
  • RK3562
  • RK3568
  • RK3576
  • RK3588
  • RK系列开发板Xenomai实测数据对比

结论分析

在处理器性能差异的情况下,触觉智能RK3506(Linux6.1内核 )实时性延迟竟超过了性能更优的RK3568Linux5.10内核表现。经验证主要有以下几点原因造成:

(1)调度器改进

Linux 6.1对调度器(如CFS)进行了多项优化,包括负载均衡算法改进(如公平组调度优化),减少了任务迁移延迟。

(2)中断线程化增强

Linux 6.1改进了线程化中断(IRQ threads)的优先级管理,确保高优先级中断能更快抢占低优先级线程。例如,irq_work_queue()的优化减少了中断处理延迟。

(3)锁机制优化

Linux 6.1引入了更细粒度的rtmutex锁优化,减少了RT任务在争抢锁时的等待时间。例如,通过"锁 stealing"机制避免无效的唤醒操作。

(4)Preempt-RT补丁版本

Linux 6.1集成了更新的RT补丁,修复了5.10的早期版本(如RK3568的5.10.209)的定时器竞争条件和优先级继承漏洞。

相关推荐
ShiMetaPi7 天前
操作【GM3568JHF】FPGA+ARM异构开发板 使用指南:串口
arm开发·单片机·嵌入式硬件·fpga开发·rk3568
华清远见IT开放实验室7 天前
STM32学习路线!软硬件兼修:裸机+RTOS+LVGL+硬件设计+项目实战 (STM32多核心开发板)
stm32·嵌入式·开发板·rtos·课程·软硬件·裸机开发
闻道且行之9 天前
KickPi RK3568平台SPI内核驱动开发
驱动开发·rk3568·kernel·spi·kickpi
Industio_触觉智能11 天前
重大更新,LVGL有UI编辑器用了
lvgl·瑞芯微·rk3506·lvgl pro·ui编辑器
mucheni14 天前
迅为RK3568开发板OpenHarmony系统南向驱动开发手册-UART应用开发编译源码
rk3568
Ching·17 天前
linux系统编程(十③)RK3568 socket之 TCP 服务器的实现【更新客户端断开重连依旧可以收发】
linux·服务器·tcp/ip·rk3568
Ching·18 天前
linux系统编程(十)RK3568 socket之 UDP的实现
linux系统编程·rk3568·嵌入式开发
Ching·18 天前
linux系统编程(十②)RK3568 socket之 TCP 客户端的实现
linux·tcp/ip·rk3568
Industio_触觉智能19 天前
RK3562核心板/开发板RT-Linux系统实时性及硬件中断延迟测试
linux·嵌入式开发·瑞芯微·rk3562·rt linux·xenomai rt·preempt_rt
ShiMetaPi21 天前
操作【GM3568JHF】FPGA+ARM异构开发板 使用指南:音频接口
arm开发·嵌入式硬件·fpga开发·rk3568