Linux
树莓派3B 采用Samba + Cockpit搭建NAS
Linux 修改开机启动 boot splash logos
Linux 下将 .po 文件编译成 .mo 文件
Python 使用 gettext 模块实现国际化
XFCE 桌面优化配置
香橙派3B 使用 WiringOP 读取 MPU6050
香橙派4 LTS 安装 WiringPi
Linux 图形界面切换到 FB 界面
校表仪 tg-timer 算法笔记
Linux 安装 EtherCat Igh
EetherCat Igh 常用指令
树莓派镜像 DIY 制作
树莓派5B 安装64位实时系统 preempt RT 补丁
linux 的 lightdm 桌面管理器下隐藏光标(鼠标)
Linux 上使用 MPD (Music Player Daemon)
Linux 自动化交互式命令行工具 —— expect
Linux GTK 界面开发
Debian系统中修改主机名
使用Python + GTK3.0 开发嵌入式GUI
Raspberry Pi 5修改系统内存分页大小解决安装esp-matter 出现的<jemalloc>: Unsupported systeom page size 错误
树莓派 linux 安装和使用clash 做VPN
树莓派自动挂载硬盘
非控制台或ssh登录用户尝试启动Xorg图形服务器
XFCE4 电源管理器配置管理
Linux PulseAudio 声卡配置和检测
IBUS修改输入法和设置切换快捷键
在 Moode Audio 中实现开机自动启动 `startx`
crontab 任务
树莓派外设耗电检测
linux 终端自动登录
linux创建新用户
linux service通过xinit启动GTK应用程序
Linux 非桌面的图形环境安装和配置
香橙派3b板载音频输出没有声音调试
使用 udev 规则修改权限实现屏幕亮度调节
Linux udev 介绍
鲁班猫4 ubuntu22.04 屏幕背光 udev 自动配置化
ubuntu22.04 动态壁纸配置
使用 udisksctl 的可靠 USB 自动挂载方案(基于 systemd-run)
通过udev规则U盘自动挂载
OpenWRT 磊科N60pro路由器刷机
本文档使用 MrDoc 发布
-
+
首页
树莓派5B 安装64位实时系统 preempt RT 补丁
**所有操作均在 root 用户下** 1. 下载必要的工具环境 ```bash apt-get install bc git bison flex libssl-dev make vim git apt-get install libncurses5-dev libncursesw5-dev ``` 2. 下载树莓派官方 [linux 源码](https://github.com/raspberrypi/linux?tab=readme-ov-file),参考树莓派文档 [Linux 内核篇](https://pidoc.cn/docs/computers/linux-kernel) ``` git clone --depth=1 https://github.com/raspberrypi/linux --branch rpi-6.6.y ``` 3. 查看linux源码内核版本,查看Makefile文件前10行。现在版本是 6.6.60; ``` cd linux $ head -n 10 Makefile # SPDX-License-Identifier: GPL-2.0 VERSION = 6 PATCHLEVEL = 6 SUBLEVEL = 60 EXTRAVERSION = NAME = Pinguïn Aangedreven # *DOCUMENTATION* # To see a list of typical targets execute "make help" # More info can be located in ./README ``` 4. 下载preempt RT的内核源码, 找到适合的版本。 这里Preempt RT内核版本要与前面linux源码内核版本前两个数字要一致,第三个数字Preempt RT内核版本的第三位数字要小于等于所选的linux内核; [PREEMPT RT 内核源码地址](https://mirrors.edge.kernel.org/pub/linux/kernel/projects/rt/)  5. Preempt RT编译工作进入linux文件夹,然后完成编译工作。使用gzip这个命令时,注意你下载的patch-6.1.38-rt12.patch.gz文件所存放的目录。如果你按照我的步骤,就直接使用,出现success说明patch就成功了。 命令如下: ```bash cd linux gzip -cd ../patch-6.6.58-rt45.patch.gz | patch -p1 --verbose KERNEL=kernel8 make bcm2712_defconfig ``` 6. 配置内核 ``` make menuconfig ``` * 将系统设置为Real Time 系统,进行选择。 General setup -> Preemption Model -> Fully Preemptible Kernel(Real-Time)    * 修改定时器频率为1000HZ。 Kernel Features -> Timer frequency -> 1000HZ  Save保存设置,返回到命令行。 7. 编译内核 ``` make -j6 ``` 8. Preempt RT 内核安装 使用以下命令把编译好的模块拷贝到系统目录下(一般是/lib/modules/) ``` make modules_install ``` 9. 将RT内核替换当前树莓派系统内核 ```bash cp arch/arm64/boot/dts/broadcom/*.dtb /boot/firmware cp arch/arm64/boot/dts/overlays/*.dtb* /boot/firmware/overlays/ cp arch/arm64/boot/dts/overlays/README /boot/firmware/overlays/ cp arch/arm64/boot/Image /boot/firmware/kernel8.img ``` 最后一行代码使用vim打开 /boot/firmware/config.txt 内核启动配置文件,在它的最后一行加上: ```bash kernel=kernel8.img ``` 保存,重启之后查看内核信息。  # 参考文档 [无需交叉编译,直接在树莓派4b打64位实时系统preempt RT补丁过程记录](https://blog.csdn.net/futuregazer_kind/article/details/132159066) [Preempt RT 6.6.x](https://mirrors.edge.kernel.org/pub/linux/kernel/projects/rt/6.6/older/) [raspberrypi/linux](https://github.com/raspberrypi/linux)
qingkai
2024年12月27日 09:44
转发文档
收藏文档
上一篇
下一篇
手机扫码
复制链接
手机扫一扫转发分享
复制链接
Markdown文件
分享
链接
类型
密码
更新密码