Ubuntu22.04编译实时内核安装preempt_rt实时补丁
cyclictest将以最高优先级在5秒钟内进行1000次循环测试,以测量Linux系统的实时性能。测试完成后,cyclictest会输出一些有关测试结果的统计信息。General Setup -> Timers subsystem -> Timer tick handling 设置为 Full dynticks system。下载Linux内核,找你的版本,不是上面几十兆的文件,往下翻有Linu
查看内核版本安装必要包
uname -a
安装必要包
apt install autoconf automake libtool make libncurses-dev flex bison libelf-dev libssl-dev zstd net-tools
下载内核以及补丁
https://mirrors.edge.kernel.org/pub/linux/kernel/
下载Linux内核,找你的版本,不是上面几十兆的文件,往下翻有Linux开头的100多M的
https://mirrors.edge.kernel.org/pub/linux/kernel/projects/rt/
下载实时补丁,注意找和内核一样的
解压以及打补丁
tar -zxvf linux-5.19.tar.gz
xz -d patch-5.19-rt10.patch.xz
cd linux-5.19/
patch -p1 < ../patch-5.19-rt10.patch
内核配置
make menuconfig
进入界面化配置后的操作
General Setup -> Preemption Model 设置为 Fully Preemptible Kernel(RT)
General Setup -> Timers subsystem -> Timer tick handling 设置为 Full dynticks system
General Setup -> Timers subsystem 开启 High Resolution Timer Support
Processor type and features -> Timer frequency 设置为 1000 HZ
记得保存后exit
vi .config
CONFIG_SYSTEM_TRUSTED_KEYS=""
CONFIG_SYSTEM_REVOCATION_KEYS=""
保存退出
编译安装
make -j`nproc`
完成后
make modules_install
make install
配置GRUB启动项
vim /etc/default/grub
1,注释掉下面这行将会显示引导菜单
GRUB_TIMEOUT_STYLE=hidden
2,适当修改超时时间
GRUB_TIMEOUT=5 超时时间,单位s
3,更新启动项配置
update-grub
重启
测试
apt-get install rt-tests
cyclictest -t 5 -p 80 -i 1000
cyclictest将以最高优先级在5秒钟内进行1000次循环测试,以测量Linux系统的实时性能。测试完成后,cyclictest会输出一些有关测试结果的统计信息
更多推荐
所有评论(0)