Ubuntu22.04安装RT-PREEMPT补丁编译实时内核

前言

在Ubuntu22.04系统上打实时补丁,并测试延时时间

内核源码与RT补丁下载

RT补丁: https://www.kernel.org/pub/linux/kernel/projects/rt/
内核源码: https://www.kernel.org/pub/linux/kernel

安装依赖

sudo apt-get update
sudo apt-get install libncurses-dev
sudo apt-get install libssl-dev
sudo apt-get install libelf-dev
sudo apt-get install bison
sudo apt-get install flex

解压及打补丁

创建目录,把补丁和内核复制到该目录,这里选用了

mkdir rtkernel
cd rtkernel

 解压linux内核和补丁压缩包

tar -zxvf linux.5.15.tar.gz
xz -d patch-5.15-rt16.patch.xz

进入linux内核目录并打入补丁

cd linux-5.15/
patch -p1 < ../patch-5.15-rt16.patch

编译内核

复制系统当前内核的.config文件,编译内核

cp /boot/config-5.11.0-41-generic .config
make menuconfig

进入界面化配置后的操作

1.General Setup -> Preemption Model 设置为 Fully Preemptible Kernel(RT)

2.General Setup -> Timers subsystem -> Timer tick handling 设置为 Full dynticks system

 

3.General Setup -> Timers subsystem ,关闭old idle dynticks config,开启 High Resolution Timer Support

4.Processor type and features -> Timer frequency 设置为 1000 HZ

5.Kernel hacking -> Compile-time checks and compiler options -> 取消Compile the kernel with debug info 可以缩小内核尺寸

6.保存后exit

gedit .config

CONFIG_SYSTEM_TRUSTED_KEYS=" "

CONFIG_SYSTEM_REVOCATION_KEYS=" "

7.保存退出

编译安装

make -j`nproc`

完成后

sudo make modules_install
sudo make install

配置GRUB启动项

sudo gedit /etc/default/grub

1,注释掉下面这行将会显示引导菜单

GRUB_TIMEOUT_STYLE=hidden

2,适当修改超时时间

GRUB_TIMEOUT=5 超时时间,单位s

3,更新启动项配置

sudo update-grub

测试

sudo apt-get install rt-tests 
sudo cyclictest -t 5 -p 80 

参考链接

Ubuntu22.04编译实时内核安装preempt_rt实时补丁_亦秋先生。的博客-CSDN博客

Ubuntu20.04 配置preempt_rt补丁过程(18.04类似)_Windsgo的博客-CSDN博客

Ubuntu 20.04安装RT-PREEMPT实时内核补丁_ubuntu20.04安装rt-preempt实时补丁_看他个锤子的博客-CSDN博客

  • 3
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值