酷德网

HSC6150发布~
查看: 103|回复: 0

树莓派编译实时内核

[复制链接]
  • TA的每日心情
    擦汗
    2019-8-13 14:13
  • 签到天数: 32 天

    [LV.5]常住居民I

    发表于 2020-6-17 10:27:10 | 显示全部楼层 |阅读模式
    硬件:树莓派2
    镜像:http://downloads.raspberrypi....
    树莓派安装必要软件
    [Bash shell] 纯文本查看 复制代码
    sudo apt install git bc bison flex libssl-dev make

    推荐安装:

    [Bash shell] 纯文本查看 复制代码
    sudo apt-get install bc
    sudo apt-get install libncurses-dev libssl-dev
    sudo apt-get install build-essential kmod cpio flex cpio bison


    下载内核
    或者

    [Bash shell] 纯文本查看 复制代码
    git clone [url]https://github.com/raspberrypi/linux.git[/url] -b rpi-4.19.y-rt


    创建内核目录,解压内核

    [Bash shell] 纯文本查看 复制代码
    cd /usr/src
    sudo mkdir linux
    cd linux
    mv /内核文件存放目录.../rpi-4.19.y-rt.zip .
    unzip rpi-4.19.y-rt.zip


    配置内核
    Raspberry Pi 1,Pi Zero,Pi Zero W 和 Compute Module

    [Bash shell] 纯文本查看 复制代码
    cd rpi-4.19.y-rt
    KERNEL=kernel7
    make bcmrpi_defconfig
    make menuconfig


    Raspberry Pi 2,Pi 3,Pi 3+和Compute Module 3

    [Bash shell] 纯文本查看 复制代码
    cd rpi-4.19.y-rt
    KERNEL=kernel7
    make bcm2709_defconfig
    make menuconfig


    Raspberry Pi 4

    [Bash shell] 纯文本查看 复制代码
    cd rpi-4.19.y-rt
    KERNEL=kernel7
    lmake bcm2711_defconfig
    make menuconfig


    找到Preemption Model(Fully Preemptible Kernel (RT)),选择Fully Preemptible Kernel (RT),保存退出。

    编译内核


    [Bash shell] 纯文本查看 复制代码
    make -j4 zImage modules dtbs


    安装模块

    [Bash shell] 纯文本查看 复制代码
    sudo make modules_install


    将编译好的文件复制到/boot文件夹中

    [Bash shell] 纯文本查看 复制代码
    sudo cp arch/arm/boot/dts/*.dtb /boot/
    sudo cp arch/arm/boot/dts/overlays/*.dtb* /boot/overlays/
    sudo cp arch/arm/boot/dts/overlays/README /boot/overlays/


    替换内核

    [Bash shell] 纯文本查看 复制代码
    sudo chmod a+x scripts/mkknlimg
    sudo scripts/mkknlimg arch/arm/boot/zImage /boot/kernel-my.img


    [Bash shell] 纯文本查看 复制代码
    sudo nano /boot/config.txt

    添加一行
    [Bash shell] 纯文本查看 复制代码
    kernel=kernel-my.img


    重启树莓派


    [Bash shell] 纯文本查看 复制代码
    sudo reboot


    检查是否成功


    [Bash shell] 纯文本查看 复制代码
    uname -a


    如果出现 PREEMPT RT,表示成功

    测试实时性

    [Bash shell] 纯文本查看 复制代码
    sudo apt-get install rt-tests
    sudo cyclictest -l100000000 -m -Sp99 -i200 -h400 -q

    打赏鼓励一下!
    +10
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册 新浪微博登陆

    本版积分规则

    
    顶部qrcode底部
    关注酷德网订阅号,获取更多资讯!

    QQ|小黑屋|手机版|Archiver|酷德论坛 ( 苏ICP备16065247号 )|网站地图

    GMT+8, 2020-8-10 01:11 , Processed in 0.163101 second(s), 41 queries , MemCache On.

    酷德网

    © 2001-2013 Hicodesys. 技术支持 by 酷德网

    快速回复 返回顶部 返回列表