内容来源:飞凌嵌入式官网

www.forlinx.com

在工业4.0时代,人工智能和工业物联网的发展走上了快车道,越来越多的行业对实时操作系统有了更加迫切的需求。基于此,飞凌嵌入式推出了在OK3568-C开发板上运行的实时操作系统,本文中小编将为大家介绍飞凌嵌入式在OK3568-C开发板上实现实时性的方式,以及实时内核的效果测试。

飞凌OK3568-C开发板

1、为什么选择实时操作系统 ?

我们都知道,操作系统可以分为实时操作系统和分时操作系统。分时操作系统其实就是将系统处理机时间与内存空间按一定的时间间隔轮流地切换给各终端用户的程序使用。目前市面上绝大多数板卡上运行的Linux系统都是分时操作系统。

但是随着自动驾驶、智能机器人等行业的兴起,对板载操作系统的实时性也提出了更高的要求。这时候,分时系统就无法满足某些对实时性要求较高的行业的需求了,必须对Linux系统进行改进,使其具有更好的实时性,以顺应行业的发展。

例如无人驾驶技术,系统需要根据复杂的路况情况及时做出分析判断,做出反应,执行刹车或变道操作;又比如车载安全气囊,在遇到突发事故时,系统必须第一时间做出反应弹出安全气囊,保护车内乘客人身安全。这些实际应用场景都离不开实时操作系统。

2、如何实现“实时性” ?

Linux系统可以采用打补丁的方式来实现“实时性”。RT-Linux就是在Linux的基础上加入了一个实时补丁,从而将Linux改进成实时操作系统。简单地说,“实时补丁”的主要工作就是针对Linux系统的优先级倒置、自旋锁等问题进行改进,以达到实时操作系统的要求。

基于这个思路,我们就可以通过对内核打实时补丁的方法让OK3568-C开发板上的Linux系统满足实时性的需求。

飞凌提供了两个补丁文件:

0001-patch-patch-4.19.206-rt87.patch-fix-kernel-sched-cor.patch

0002-fix-kernel-sched-core.c.patch

将两个补丁文件拷贝到源码/OK3568-linux-source/kernel路径下,执行以下命令:

patch-p1 <0001-patch-patch-4.19.206-rt87.patch-fix-kernel-sched-cor.patch

patch-p1 < 0002-fix-kernel-sched-core.c.patch

然后,在源码执行./build.sh kernel命令,即可在/OK3568-linux-source/kernel目录下生成boot.img镜像文件。

客户也可以直接单步烧写飞凌制作完成的boot.img镜像文件。

使用Type-C线连接开发板和主机,按住recover键不松开,然后再按reset键系统复位,大约两秒后松开recover键。系统将提示发现一个loader设备。

点击“设备分区表”按钮,将自动读取分区地址。

点击左侧勾选boot分区。

最后,点击右侧选择您编译生成的boot镜像文件路径,点击“执行”按钮将自动烧写并重新启动。

想要了解有关实时补丁的详细资料,您可以在公众号留言联系飞凌嵌入式销售工程师。

3、实时内核效果测试

测试实时性的关键指标便是“延时”,延时指的是不论系统运行在代码的什么位置,当事件发生时,系统响应该事件的时间。

其中中断延时指的是中断触发到中断服务函数执行完毕的时间;调度延时指的是进程在队列中等待直到获取CPU控制权被执行的时间。

实时性,也可以表现为对这两段延时最大的容忍程度。这里通过cyclictest软件测量中断延时和调度延时时间。

由于在真实的使用环境下并不能触发最大的延时时间,因此在没有合适负载的情况下运行cyclictest所测得的延时统计数据是没有意义的。这里我们采用官方提供的hackbench工具来模拟部分类型的负载,然后在此基础上运行cyclictest软件来测试事件发生时,系统响应该事件的时间。

先来看一下未打实时补丁的测试结果

再来看一下打实时补丁后的测试结果

这里我们着重比较两者Max得出的参数,因为系统的实时性能是由最大延时时间决定的。通过对打实时补丁前后测试结果进行对比,打实时补丁以后,可以明显看出延时从213μs降低到80μs以内,实时效果还是十分明显的。(不同测试条件下的延时不同,这里的测试结果仅供大家参考)

希望这个实时性方案能够满足您的需求,想要了解更多产品,欢迎进入飞凌嵌入式官网www.forlinx.com。

飞凌RK3568开发板实时系统来啦!实时性,更强大相关推荐

  1. linux根目录挂载到2440开发板,飞凌2440开发板挂载NFS

    使用嵌入式Linux不长,今天尝试着NFS挂载.挂载成功,在这里记录一下. 飞凌2440开发板 我的操作步骤是这样的: 1.将开发板的串口线和网线连接好,然后打开开发板的电源. 2.打开串口调试助手, ...

  2. linux开发板led怎么亮,飞凌OK6410开发板(裸板) 第一个点亮LED灯程序

    飞凌OK6410开发板(裸板) 第一个点亮LED灯程序,主要的C程序,完整程序请下载附件. #define rGPMCON          (*(volatile unsigned *)(0x7F0 ...

  3. LS1028A性能介绍-NXP Layerscape 系列功能对比-飞凌LS1028开发板评测

    在 OK1012A- C . OK1043A-C . OK1046A-C 之后, 飞凌嵌入式推出了 OK1028A-C 新一代 Layerscape 系列 开发板.在 OK1028A-C 到来之前,  ...

  4. linux内核移植与开发板,Linux 2.6.36内核移植飞凌OK6410开发板完整步骤详解

    Linux 2.6.36内核移植飞凌OK6410开发板完整步骤详解 [复制链接] 今天终于让Linux内核在飞凌的板子上跑起来了,想来也是艰辛,为了移植成功,断断续续做了将近两个月的努力,期间郁闷不可 ...

  5. 飞凌OK6410开发板移植u-boot官方最新版u-boot-2012.10.tar.bz2

    Part0 准备知识 0.1 关键参数说明 0.1.1 开发板说明 OK6410是飞凌公司发布的一款开发板,当前有2个版本,OK6410-A和OK6410-B,我当前使用的是前者:前者也经历过升级,所 ...

  6. gstreamer插件开发_测评丨高性能多媒体处理器—飞凌OKMX8MM-C开发板

    NXP i.MX 8M Mini 应用处理器内置高性能.高能效的 14 FinFET 技术.在快速发展的智能家居和智能嵌入式工业市场中,它是高性能和高性价比产品的选择.它是 NXP 采用 14 Fin ...

  7. 6410 android 4.4.2,365备用「永久地址0365.tv」飞凌嵌入式开发板飞凌i.MX6开发板 Android 系统编译...

    安装编译Android4.4 系统所需要的库 1. 安装编译Android 必要的包 # apt-get -y install git gnupg flex bison gperf build-ess ...

  8. 工程师评测 | RK3568开发板上手测试

    以下文章来源于[嵌入式实验楼] ,作者BruceOu. OK3568-C开发板采用核心板+底板的分体式设计,基于 Rockchip RK3568 处理器设计,该处理器具有高性能.低功耗特点,功能丰富, ...

  9. 实时性,更强大 | 瑞芯微3568开发板实时系统测评

    在工业4.0时代,人工智能和工业物联网的发展走上了快车道,越来越多的行业对实时操作系统有了更加迫切的需求.基于此,飞凌嵌入式推出了在OK3568-C开发板 飞凌嵌入式官网-ARM嵌入式核心板.开发板. ...

最新文章

  1. cookie和session的那些事儿
  2. Spring Boot中使用RabbitMQ
  3. 了解java.nio.file.Path – 2
  4. LeetCode 6060. 找到最接近 0 的数字
  5. ​MobileViT 它来了!Apple 提出轻量、通用、适用于移动设备的Transformer!
  6. 国外一些知名ASP.Net开源CMS系统
  7. mysql 临时表 事务_MySQL学习笔记十:游标/动态SQL/临时表/事务
  8. 【Java从0到架构师】SpringCloud - Eureka、Ribbon、Feign
  9. app 如何接收遥控信息_如何选购红外接收头?华新告诉你产品的标准
  10. qml修改图片的颜色
  11. linux 合并csv文件 cat,Python:将两个CSV文件合并为多级JSON
  12. 计算机基础证和PS证,全国计算机等级PHOTOSHOP一级证书
  13. ddr4 dqs 频率_ddr4
  14. 用鲁棒学习提升无监督图像聚类
  15. 自动复制 JavaScript 脚本,JavaScript点击任意位置复制脚本源码
  16. 长短期记忆(Long Short-Term Memory,LSTM)
  17. 硬件工程师和软件工程师哪个更有前途?
  18. Java实现 LeetCode 457 环形数组循环
  19. linux——管道详解
  20. [OpenCV实战]10 使用Hu矩进行形状匹配

热门文章

  1. ab胶粘合的原理?详解胶黏剂是如何粘住物体的!
  2. 单词王(kingWord)
  3. ISE 设计、综合及仿真流程
  4. 主流邮件服务器pop3和smtp配置
  5. 解决Masonry 中equalTo和mas_equalTo 乱用的问题
  6. 佐美人--arm32/64/openwrt文件系统移植
  7. 西湖大学张岳老师的NLP课程强烈推荐!
  8. 西湖大学自然语言处理(一)—— 课程简介及大纲
  9. 使用canal 监听mysql binlog获取增量数据
  10. STM32HAL 移植 cJSON开源库 (裸机开发神器)