Ubuntu打实时内核补丁(RT-PREEMPT kernel)

简介
RT-Preempt Patch是在Linux社区kernel的基础上,加上相关的补丁,以使得Linux满足硬实时的需求。下面是编译RT linux内核的流程,以内核3.18.59为例。

流程

下载代码

rt补丁下载 https://www.kernel.org/pub/linux/kernel/projects/rt/
内核源码下载 https://www.kernel.org/pub/linux/kernel/v3.0/

下载的内核和补丁版本号必须严格对应

打补丁

解压linux源码linux-3.18.59.tar.gz,把补丁文件patch-3.18.59-rt65.patch.gz放到和内核文件夹同一目录

sudo apt-get install libncurses-dev

cd linux-3.18.59
gzip -cd ../patch-3.18.59-rt65.patch.gz | patch -p1 --verbose

patch -p1 < ../patch-3.18.59-rt65.patch

p0意思是不忽略目录,直接从当前目录开始、p1忽略第一层目录。进入内核目录打补丁,所以使用p1

配置内核
make localmodconfig
make menuconfig

make localmodconfig 根据目前系统内核的配置生成配置文件 .config

Ubuntu打实时内核补丁(RT-PREEMPT kernel)

Ubuntu打实时内核补丁(RT-PREEMPT kernel)

Ubuntu打实时内核补丁(RT-PREEMPT kernel)

关闭内存溢出检测

Ubuntu打实时内核补丁(RT-PREEMPT kernel)

Ubuntu打实时内核补丁(RT-PREEMPT kernel)

Ubuntu打实时内核补丁(RT-PREEMPT kernel)

编译安装
    make -j2
    sudo make modules_install -j2
    sudo make install -j2

或者
    #fakeroot make deb-pkg
    #sudo dpkg -i *.deb

更新grub
cd /boot
ls
查看是否成功生成rt核
sudo update-grub
vim /boot/grub/grub.cfg 看内核是否添加到grub

如果自动安装失败,就需要手动修改 /boot/grub/grub.conf 去配置启动项,如下图,

Ubuntu打实时内核补丁(RT-PREEMPT kernel)

校验

重新启动系统,uname -a命令查看 有PREEMPT RT 字样内核替换成功。

Ubuntu打实时内核补丁(RT-PREEMPT kernel)

猜你喜欢

转载自www.linuxidc.com/Linux/2018-05/152270.htm