• 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏吧

UBUNTU-16.04.07和PREEMPT_RT日志

互联网 diligentman 4天前 10次浏览

UBUNTU-16.04.07和PREEMPT_RT日志

  • UBUNTU-16.04.07和PREEMPT_RT日志
    • 安装Ubuntu
      • 后续个人设置(可跳过)
    • PREEMPT内核补丁安装
      • PREEMPT相关资料链接
      • 下载linux内核
      • 安装过程
      • 重启系统
      • 验证是否是启动了实时内核
    • 内核测试

UBUNTU-16.04.07和PREEMPT_RT日志

简单从头记录了在WIN10下安装UBUNTU-16.04.07系统,及安装PREEMPT_RT实时内核补丁的过程。

安装Ubuntu

  1. 下载上海交大镜像站的Ubuntu桌面版https://mirrors.sjtug.sjtu.edu.cn/ubuntu-cd/16.04/ubuntu-16.04.7-desktop-amd64.iso
  2. 百度、下载并安装UltraISO来制作U盘启动盘,安装后管理员身份运行。文件–>打开–>选择刚刚下载的.iso,然后在左下方选择插入的U盘,建议提前格式化,菜单栏点启动–>写入硬盘映像,写入方式为“USB-HDD+”(应该是默认的,我没改),点写入即可创建启动盘。
  3. 磁盘管理中我提前空出了30G的SSD和150G的机械硬盘空闲分区。
  4. 如果WINDOWS的硬盘模式是RAID而非AHCI,需要改动,这一部分的设置参考了Ubuntu官网论坛,步骤如下:

a. 在WINDOWS中管理员身份运行POWERSHELL,输入命令:bcdedit /set safeboot minimum
b. 重启按F2(不同机器可能不同)进入BIOS,更改为AHCI
c. 继续以WINDOWS安全模式启动,并管理员身份运行POWERSHELL,输入命令:bcdedit /deletevalue safeboot
d. 重启WINDOWS即可完成

  1. 重启WINDOWS,开机按F12(不同机器可能不同)选择启动项,选择USB启动,然后在跳出的界面选择安装Ubuntu,等待进入Ubuntu安装界面。
  2. 安装过程中第二步不建议联网,第三步建议都不勾选(下载更新和第三方软件)
  3. 第四步应该是分区,先前空出的分区会显示为freespace什么的,点击后点击左下角+号,可以选择挂载分区。
    我的分区方案是:

swap 8G (SSD,logic)
boot 2G (SSD,logic)
home 150G (机械盘,logic)
30G (SSD,primary)

  1. 然后安装,等待安装完成。
  2. 连接无线网,并更新软件包:
sudo apt-get update

后续个人设置(可跳过)

  1. 设置了中文环境(详细可百度,不需要也可跳过),保留Documents等文件夹英文名称。
  2. 配置了FCITX输入法(详细可百度,不需要也可跳过)。
  3. 安装了7zip、vim、chrome。

PREEMPT内核补丁安装

PREEMPT相关资料链接

安装时主要参考的文献,内核补丁的介绍里面也有内链可参考,安装步骤有修改。https://blog.csdn.net/v6543210/article/details/80941906

下载linux内核

  1. 系统默认的内核为4.15.0-112-generic,这里要去下载有Preempt支持的4.19.25版本内核,地址为清华源,下载下来默认在~Download中:https://mirror.tuna.tsinghua.edu.cn/kernel/v4.x/linux-4.19.25.tar.xz
  2. 下载4.19.25对于的补丁包,去官网下载即可:https://mirrors.edge.kernel.org/pub/linux/kernel/projects/rt/4.4/older/patch-4.19.25-rt16.patch.xz
  3. ~Download中,打开终端(或cd定位到这里也行),顺序运行以下命令来解压内核包,并安装补丁(操作方法来自PREEMPT官网):
xz -cd linux-4.19.25.tar.xz | tar xvf -
cd linux-4.19.25
xzcat ../patch-4.19.25-rt16.patch.xz | patch -p1
  1. 在终端中安装必须的软件包:
sudo apt-get install libncurses-dev
sudo apt-get install libssl-dev
sudo apt-get install libelf-dev

安装过程

  1. (这一步应该可以跳过,请忽略,其他教程说不这样会错,我觉得应该影响不大)

拷贝原内核的.config文件(/usr/src/原内核,需要ctrl+H显示隐藏文件)到linux-4.19.25文件夹中,然后在之前内核包的目录下执行:

make localmodconfig

其中preemption mode选择5,其他按住enter

  1. linux-4.19.25目录下执行:
make menuconfig

若提示缺少bison和flex,就执行以下命令来安装

sudo apt-get install bison flex

  1. 终端中出现图形界面,执行一下两部操作,注意图形界面的操作要靠上下左右按键:

进入Processor type and feature —> Preemption Model选择Fully Preemptible Kernel (RT)
进入Kernel hacking –> Memory Debugging —>Check for stack overflows 取消勾选!!

选择保存(save),出现界面默认点ok,然后退出(exit)

  1. 在linux-4.19.25目录下执行编译,根据自己的CPU核心数选择‘j’后面的数字,我是四核,选择了j8,顺序运行以下命令:
make -j8									##编译,可能需要很久
sudo make modules_install -j8				##安装
sudo make install -j8						##安装
sudo update-grub							##更新grub

重启系统

sudo reboot									##重启计算机,并按后面的步骤操作

这一步重启以后应该会跳出以下引导界面,选择第二个Ubuntu高级选项,进入后找到刚刚安装好的内核Ubuntu,With Linux 4.19.25-rt16(应该默认在第一行,如果在第一行以后选择UBUNTU就是默认启动这个内核了),Enter即可。
UBUNTU-16.04.07和PREEMPT_RT日志

验证是否是启动了实时内核

终端输入uname -a,得到以下结果,终于成功。
UBUNTU-16.04.07和PREEMPT_RT日志

内核测试

(还没做,有空测试)


喜欢 (0)