说明
补丁获取方式:瑞芯微官方或第三方平台提供的SDK内。/SDK/docs/Patches/Real-Time-Performance/PREEMPT_RT内选择对应版本的补丁
适用于RK3506、RK3562、RK3568、RK3576、RK3588
测试平台
硬件:正点原子RK3588开发板
软件:正点原子RK3588 SDK
方法
1.将对应的patch补丁放到/SDK/Kernel内
2.打补丁
#XXXXX补丁名称
patch -p1 < XXXXX
3.内核开启RT
#加载内核配置文件
make ARCH=arm64 rockchip_linux_defconfig
#打开内核图形配置界面
make ARCH=arm64 menuconfig
依次选择
General setup --->
Preemption Model --->
(X)Fully Preemptible Lernel (Real-Time)
#保存配置
make ARCH=arm64 savedefconfig
#将保存的配置文件覆盖原文件
cp defconfig arch/arm64/configs/rockchip_linux_defconfig
4.编译内核
#交叉工具链环境
export CROSS_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
make ARCH=arm64 rockchip_linux_defconfig rk3588_linux.config rockchip_rt.config
#xxxxx要使用的设备树名称.
make ARCH=arm64 xxxxx.img -j10
将镜像下载到板子上
查看 RT 安装是否成功
uname -a
显示Linux yuxi 5.10.209-rt89-g16b8cb7e2392-dirty #3 SMP PREEMPT_RT Sat Aug 16 20:25:40 CST 2025 aarch64 aarch64 aarch64 GNU/Linux代表成功
5.使用cyclictest测试
安装工具
sudo apt update
sudo apt install rt-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
:循环次数
6.使用RT加载应用程序
# 以 SCHED_FIFO 策略、优先级 90 启动
sudo chrt -f 90 ./APP