当前位置: 首页 > news >正文

瑞芯微开发板内核打PREEMPT_RT补丁

说明

补丁获取方式:瑞芯微官方或第三方平台提供的SDK内。/SDK/docs/Patches/Real-Time-Performance/PREEMPT_RT内选择对应版本的补丁

适用于RK3506、RK3562、RK3568、RK3576、RK3588

测试平台

硬件:正点原子RK3588开发板、米尔RK3568核心板、米尔RK3506开发板
软件:正点原子RK3588 SDK、米尔RK3568 SDK

方法一

1.将对应的patch补丁放到/SDK/Kernel内

产品版本

芯片名称内核版本
RK3562kernel-5.10
RK3568kernel-4.19,kernel-5.10
RK3588kernel-5.10
RK3576kernel-6.1
RK3506kernel-6.1
2.打补丁
#XXXXX补丁名称patch-p1<XXXXX
3.内核开启RT
#加载内核配置文件 若没有rockchip_linux_defconfig,改为自己定义的配置文件,后续所有设计到的都类似,RK3506 将arm64改为armmakeARCH=arm64 rockchip_linux_defconfig
#打开内核图形配置界面 RK3506 将arm64改为armmakeARCH=arm64 menuconfig

依次选择

General setup ---> Preemption Model ---> (X)Fully Preemptible Lernel (Real-Time)
#保存配置 RK3506 将arm64改为armmakeARCH=arm64 savedefconfig
#将保存的配置文件覆盖原文件 有的厂家可能自命名 RK3506 将arm64改为armcpdefconfig arch/arm64/configs/rockchip_linux_defconfig
4.编译内核
#交叉工具链环境exportCROSS_COMPILE=../prebuilts/gcc/linux-x86/aarch64/gcc-arm-10.3-2021.07-x86_64-aarch64-none-linux-gnu/bin/aarch64-none-linux-gnu-#相比使用./build.sh kernel内置命令,多加了rockchip_rt.config#rk35XX_linux修改为自己的板子 有的可能没有rockchip_linux_defconfig和rk35XX_linux.config,确保defconfig文件匹配即可makeARCH=arm64 rockchip_linux_defconfig rk35XX_linux.config rockchip_rt.config#xxxxx要使用的设备树名称.makeARCH=arm64 xxxxx.img-j10

方法二(SDK内修改)

步骤1,2,3同方法一,步骤3也可参考以下内容。

3.内核开启RT

在SDK根目录

#打开内核图形配置界面./build.sh kernel-config

依次选择

General setup ---> Preemption Model ---> (X)Fully Preemptible Lernel (Real-Time)
4.修改编译配置

在/SDK/device/rockchip/common/build-hooks/10-kernel.sh中,找到do_build(),在make_kernel_config前插入

RK_KERNEL_CFG_FRAGMENTS="$RK_KERNEL_CFG_FRAGMENTSrockchip_rt.config"

并保存。

5.编译
#编译整个SDK./build.sh all#只编译内核./build.sh kernel

验证:

将镜像下载到板子上

查看 RT 安装是否成功

uname-a

显示Linux yuxi5.10.209-rt89-g16b8cb7e2392-dirty #3 SMPPREEMPT_RTSat Aug 16 20:25:40 CST 2025 aarch64 aarch64 aarch64 GNU/Linux代表成功

使用cyclictest测试

安装工具

sudoaptupdatesudoaptinstallrt-tests

测试

# 单核测试cyclictest-t1-p80-n-i1000# 多核测试(测试4个线程,每个绑定到一个CPU)cyclictest-t4-p80-a-n-i1000# 输出统计结果cyclictest-t1-p99-n-i1000-l10000

cyclictest工具说明

-tN:N个测试线程

-a:自动绑定线程到CPU

-p:优先级(实时调度优先级,越高越实时)

-n:mlockall(),避免内存分页

-i:周期(微秒,默认1000即1ms)

-l:循环次数

使用RT加载应用程序
# 以 SCHED_FIFO 策略、优先级 90 启动sudochrt-f90./APP
http://www.jsqmd.com/news/1400299/

相关文章:

  • trackerslist 一步到位使用指南:3个阶段告别BT下载连不上与龟速下载
  • BT下载龟速逼疯人?trackerslist 114个公共Tracker服务器,一次配好速度翻40倍
  • 旧电脑免费升级新系统:OpenCore Legacy Patcher 让被官方放弃的 Mac 重新点亮屏幕
  • Mars3D 三维地球开发完整指南:三步快速上手、五大落地场景与新手避坑清单
  • 大模型后端上线清单:SSE、显存配额与并发队列
  • 杭州黄金线下实地交易,称重环节这些细节不能忽视 - 日常前沿快讯
  • Unity一个动画控制器为何直接依赖另一个动画控制器
  • MEAnalyzer参数实战指南:一文吃透Intel固件分析命令
  • 2026年泉州工程专供花箱定做服务介绍 - 滚动商讯
  • 一分钟搞定NCM格式转换:ncmdump免费解锁网易云音乐加密文件的快速上手宝典
  • 自动化脚本上手记:蔚蓝档案的日常,从两小时到二十分钟
  • 如何用 Arnis 把现实世界搬进 Minecraft?一份真实地图生成实战指南
  • BT下载卡在99%不动?3个技巧用trackerslist让下载彻底起飞
  • 【JVM原理详解】55-内存泄漏排查实战
  • 深度揭秘GNU Emacs notebook-mode工作原理:从org-mode到SVG标签的实现细节
  • 微信聊天记录导出终极指南:用WeChatMsg把十年对话永久保存成数字遗产
  • RAT-retrieval-augmented-thinking Claude专用版:Anthropic消息预填充技术实战
  • 微信聊天记录导出与永久保存完整指南:开源神器WeChatMsg让你把每一段对话都留住
  • 杭州黄金周大福金条回收,成色判定标准简单科普 - 日常前沿快讯
  • social-auto-upload 实战教程:一条视频如何一键发布到 6 个平台
  • 不交会员费也能听无损:开源音源搭配洛雪音乐的免费无损音乐终极手册
  • 想知道长沙好用的全屋定制安装哪家强?这份对比别错过! - 滚动商讯
  • 2026年周边渗碳处理生产厂家 工艺不稳交付滞后 靠谱选型参考 - 滚动商讯
  • LeetCode 394:字符串解码——Java 单栈模拟与嵌套解析详解
  • 如何让一台老Mac免费跑上最新macOS?OpenCore Legacy Patcher升级全指南
  • 一个下午从零装好黑苹果:OpCore-Simplify快速实战手记
  • CQRS 架构在 shriek-fx 中的完美落地:命令与查询分离的终极实践教程
  • JX3Toy全功能减负工具上手指南:用Lua智能脚本接管剑网3的技能循环
  • 114个Tracker服务器,如何让BT下载从“龟速“变“光速“?
  • 2026年周边精密模具热处理服务商 适配多场景选购参考 - 滚动商讯