- 博客(64)
- 资源 (4)
- 收藏
- 关注

原创 【xenomai3内核解析】文章大纲
xenomai内核解析本博客为本人学习linux实时操作系统框架xenomai的一些记录,主要剖析xenomai内核实现,以及与linux相关的知识。方便读者定位具体文章,现列出本博客大纲,后续会陆续将大纲中缺少部分填充完整,感兴趣的读者敬请关注!版权声明:本文为本文为博主原创文章,转载请注明出处https://blog.youkuaiyun.com/qq_22654551。如有问题,欢迎指正。第一章 认识xenomai1. 嵌入式实时linux概述2. xenomai的组成结构第二章 构建xenomai内
2020-10-18 18:25:36
2881
9

原创 有利于提高xenomai/PREEMPT-RT 实时性的一些配置建议
本文讲述一些有利于提高xenomai 实时性配置建议,其中,一些是通用的,一些是针对某个架构的,希望对你有用。一、影响因素硬实时操作系统应具备的最重要特性之一是可预测性,系统应该保证满足所有关键时序约束。然而,这取决于一系列因素,这些因素涉及硬件的架构特征、内核中采用的机制和策略,以及用于实现应用程序的编程语言。1.硬件硬件方面,第一个影响调度可预测性的是处理器本身。处理器的内部特性是不确...
2020-06-19 22:38:43
8405
22

原创 xenomai3+linux 构建linux实时操作系统-基于X86_64和arm
文章目录一、概要一、环境准备1. 安装内核编译工具2. 准备内核及补丁文件4. 打ipipe补丁5. 添加xenomai内核6. xenomai 内核配置7.内核编译与安装a) 编译构建xenomai内核debian安装包b) 分步编译内核并安装8.编译安装实时库libcobalta) 编译构建xenomai库debian安装包b) 分步编译安装xenomai库9.xenomai实时性测试10.arm架构安装xenomai参考链接:最近接触实时系统Xenomai,该文章整理记录X86环境下xenomai
2020-05-10 16:42:28
15046
30

原创 xenomai内核解析--xenomai初探
文章目录一、xenomai 3二、xenomai3 结构这是第二篇笔记。一、xenomai 3从xenomai3开始支持两种方式构建linux实时系统,分别是cobalt 和 mercury。cobalt :添加一个实时核,双核结构,具有实时内核cobalt、实时驱动模型RTDM、实时应用POSIX接口库libcobalt,基于libcobalt的其他API skins,如Alche...
2020-05-05 21:58:05
9725
5
原创 关于linux网桥(Linux Bridge)的一些个人记录
作为一个工业自动化行业常游走于各种 OT 网络和 IT 网络之间的码农,linux 网桥是常使用的工具之一,每每涉及Linux 网桥, 这些记忆性的操作都要现查,零散且麻烦,所以简单整理一下,主要方便自己查询,同时分享给大家参考,希望对你有所帮助。
2025-01-09 20:03:11
843
原创 xenomai3 ipipe机制简述(基于X86)
本文基于x86简单介绍ipipe的工作机制,ipipe是xenomai保证硬实时性的核心,本文是以前分析代码的一些流水记录,未经详细整理,希望对你认识xenomai原理有所帮助。
2025-01-05 17:43:33
792
原创 浅谈EtherCAT主站EOE(下)-EtherCAT IgH主站EoE具体实现
Ethernet over EtherCAT (EoE) 是一种通信协议,它允许通过网络连接访问从站设备的参数,以便配置和诊断从站设备。EoE 允许将常见的互联网协议(如 HTTP、FTP 等)的数据插入到 EtherCAT 协议数据中,而不影响 EtherCAT 过程数据 ,本文介绍了linux内核态EtherCAT主站igh 中EoE的具体实现,希望对你有所帮助。
2025-01-05 14:48:44
1251
原创 关于xenomai3 RTnet的一点记录
TCP/IP本就不是实时的,xenomai3全部用rtnet实现可用性太低,但在实际实时以太网应用中,基本只用到二层实时网络收发,不涉及三层及以上协议,所以xenomai4中evl核中基于linux扩展,实时只支持raw packet是非常正确的做法!在一些应用场合我们需要控制phy,或者读写phy寄存器信息,但rtnet ioctl没有linux的ioctl全面,没有相关接口,这类接口需要自己在socket.c中添加,同时网卡驱动中同步增加。linux发送时,直接通过rtnet网卡发送。
2025-01-05 11:30:36
884
原创 波折重重:一个Linux实时系统Xenomai宕机问题的深度定位过程
波折重重:Linux实时系统Xenomai宕机问题的深度定位本文将带您深入了解一个与之相关的真实事故现场及其问题定位过程,波折重重,其中的xenomai问题定位思路具有一定借鉴意义,希望对你定位xenomai问题有所帮助。
2024-12-26 23:31:06
1216
原创 xenomai环境下开源实时数控系统LinuxCNC EtherCAT编译安装
LinuxCNC是一款基于Linux操作系统的开源实时数控系统,可将普通计算机转变为高效的CNC(计算机数字控制)机器,本文记录xenomai下linuxcnc的构建安装。
2024-12-22 14:59:32
1183
原创 PREEMPT-RT中断线程化原理与中断线程优先级设置
本文介绍实时linux方案PREEMPT-RT提升系统实时性的机制之一--中断线程化,以及中断线程优先级如何配置,希望能对你有所帮助。
2024-12-18 10:44:25
1345
原创 ARM64平台实时linux操作系统xenomai4(EVL)构建安装简述-基于RK3588
本文简要记录在瑞芯微RK3588(ARM64)构建安装实时linux操作系统xenomai4的过程,及实时性测试。
2024-12-15 19:23:24
1406
2
转载 【转载】优快云背后的“神秘访客”:揭秘那些只点赞收藏的机器人粉
好久没写优快云了,最近发了几篇博客文章,刚发布就有很多人点赞,很反常,点开这些人博客要么空空如也,要么只有转载,而且转载文章的日期出奇的一致,看来都是机器人。还是博客园纯净,本博客以博客园为主,文章的勘误主要以博客园为主,博客园地址[https://www.cnblogs.com/wsg1100](https://www.cnblogs.com/wsg1100)
2024-11-28 20:15:17
117
1
原创 linux实时操作系统xenomai看门狗(watchdog)机制及作用介绍
本文介绍linux实时操作系统xenomai中的watchdog机制及用途。
2024-11-26 22:23:44
1150
原创 PREEMPT-RT 系统某些应用场景sys cpu使用率周期CPU飙高问题
一个外部周期事件导致的PREEMPT-RT系统CPU周期飙高问题记录
2024-11-17 18:24:14
403
原创 RK3588/RK3576/RK3568/RK3562平台 IgH EthercAT主站编译安装及测试
本文记录EtherCAT主站典型编译配置流程,基于RK3562创龙SDK描述,3568、3588编译仅SDK路径和上的差别,其他流程一致,整体流程也可用于其他平台。
2024-10-19 22:00:17
2359
2
原创 EtherCAT主站IgH解析(二)-- 如何将Igh移植到Linux/Windows/RTOS等多操作系统
本文探讨IgH EtherCAT Master针对Linux/Windows/RTOS等不同操作系统的移植。
2024-06-20 22:19:42
1480
3
原创 【原创】不同RTOS中POSIX接口的实现差异
以精确定时为例,精确定时是我们常用的操作系统服务之一,比如工业以太网(ECAT、PN...)中的通信周期,通信周期的准确控制离不开精确定时;在无线基站和终端的slot调度中,精确定时确保了数据传输的有序与高效;在实时仿真中,仿真步长的精确控制更是模拟真实场景的关键等等,这些都离不开POSIX定时接口。本文首先简要概述POSIX标准,随后深入剖析POSIX定时接口在常用开放内核源码的RTOS(实时操作系统)上的上的实现原理做简单介绍。通过本文的介绍,希望能为读者在实际应用中提供有价值的参考,避免在RTOS中使
2024-05-09 09:00:34
1354
转载 跟我一起写Makefile(重制版)
跟我一起写Makefile》是陈皓发表在其优快云博客上的系列文章。该系列文章翻译整理自,一直受到读者的推荐,是很多人学习Makefile的首选文档。目前网络上流传的PDF版本多为祝冬华整理的版本。这个版本的排版一般,代码部分没有做任何语法高亮。2010年初学Makefile的时候,读了前几章皮毛,一直用到了现在。最近想着重新学习一下Makefile,顺便学习一下Sphinx,重新制作一个更精美的PDF版本。书的文字部分来自于Andriki提供的Mediawiki源码;使用Sphinx制作文档。
2024-02-29 22:27:10
276
原创 开源工业以太网现场总线协议栈汇总
https://github.com/ethercrab-rs/ethercrab 一个纯rust语言编写的全新etehrcat主站,目前功能不完善。https://github.com/ribalda/ethercat 基于官方,功能更为全面的igh etehrcat主站。https://github.com/leducp/KickCAT 一个C++写的全新etehrcat主站,目前功能不完善。CanFestival开源库网址:https://hg.beremiz.org/
2023-12-13 09:00:07
1364
原创 虚拟化技术及实时虚拟化概述
虚拟化是一种可以在一台物理机上运行多个操作系统和应用程序,从而提高资源利用率和灵活性的技术。实时虚拟化技术是一种针对实时应用场景的虚拟化技术,如工业控制、汽车电子、无线通信、航空航天等领域,它要求在保证虚拟化优势的同时,满足严格的时间约束和高可靠性要求。本系列文章文将对实时虚拟化技术进行介绍,分析其原理、特征、关键技术和难点,以及应用场景。
2023-07-16 20:51:55
1853
原创 xenomai内核解析--xenomai实时线程创建流程
本文介绍了linux硬实时操作系统xenomai pthread_creta()接口的底层实现原理,解释了如何在双内核间创建和调度一个xenomai任务。本文是基于源代码的分析,提供了详细的流程和注释,同时给出了结论部分,方便读者快速了解核心内容。
2023-07-02 18:04:15
3378
12
原创 【原创】浅谈EtherCAT主站EOE(上)-EOE网络
Ethernet over EtherCAT (EoE) 是一种通信协议,它允许通过网络连接访问从站设备的参数,以便配置和诊断从站设备。EoE 允许将常见的互联网协议(如 HTTP、FTP 等)的数据插入到 EtherCAT 协议数据中,而不影响 EtherCAT 过程数据 ,那ETherCAT主站是如何让实现的呢?
2023-05-28 10:07:27
2373
2
转载 【转载】Fortran - 快速指南
要定义派生数据type,请使用类型和end type语句。。type语句定义一个新的数据类型,为您的程序提供多个成员。类型语句的格式是这样的 -end type以下是您声明Book结构的方式 -type Books。
2023-04-04 08:30:27
3830
2
原创 【原创】Ubuntu22.04安装 PREEMPT-RT(Ubuntu Pro RealTime linux/realtime Ubuntu)
以往我们开发实时Linux内核PREEMPT-RT,需要开发者自己打补丁-配置-编译构建安装,实时性暂且不谈,可靠性、稳定性完全没有保障,现在Ubuntu官方提供PREEMPT-RT支持啦。实时 Ubuntu 于2023 年 2 月 14 日基于Ubuntu 22.04 LTS发布,支持旨在为关键电信基础设施提供性能、超低延迟和安全性。基于 Linux 内核的 5.15 版本集成了 x86 和 Arm架构的树外PREEMPT_RT补丁。有了ubuntu官方支持,可靠性、稳定性有保障,赶快来安装体验一下。
2023-04-01 23:44:48
6289
4
原创 【原创】实时linux如何printf输出不影响实时性?
本文介绍为什么linux实时任务不能直接调用printf(),首先简单介绍一下终端输出原理,然后如何实现终端输出不影响实时任务实时性给出一个方案,最后介绍xenomai中是如何做到完美printf()的。
2023-01-16 01:02:02
1401
6
原创 Ftrace使用及实现机制
ftrace 即function tracer,最初是用来 trace 内核中的函数。现在 ftrace 的功能不仅仅是function tracer,更加丰富了,可观测内核很多信息。本文分为两个部分,第一部分介绍ftrace的使用,大部分来源于Linux内核ftrace文档ftrace.rst,第二部分介绍ftrace的实现原理。
2023-01-02 22:15:37
977
原创 【原创】xenomai UDD介绍与UDD用户态驱动示例
本文介绍linux实时操作系统xenomai UDD原理和相关代码,并给出一个基于UDD的用户态操作GPIO的示例,以及xenomai RTNet协议栈收发网络包与UDD用户态驱动操作网卡收发包的CPU耗时对比。
2022-09-03 15:00:01
1850
4
转载 【转载】AF_XDP技术详解
XDP 定义了一个受限的执行环境(a limited execution environment),运行在一个 eBPF 指令虚拟机中,由网络数据事件触发eBPF虚拟机执行XDP程序指令,使用XDP 提供的 XDP_REDIRECT 操作,可以将将接收的网络包重定向到其他启用 XDP 的设备发送出去或者重定向到其他CPU处理。 AF_XDP是一个基于XDP实现的协议族(例如AF_NET),主要用于高性能报文处理。...
2022-08-27 09:44:15
1129
转载 [转] DSP缓存机制
本文主要以DSP讲解cache原理,但原理与CPU是相通的,故转载,原文地址:https://blog.youkuaiyun.com/qq_39376747/article/details/112794096DSP 缓存机制注:本文说明的DSP基于TI c6000系列的C66x DSP1.Cache基础一般来说我们的代码往往是存放在我们的磁盘设备中(EMMC、SSD、Flash等),当我们运行程序的时候,我们需要将代码加载到我们的内存(DDR)中去运行,之后CPU再从内存中加载代码执行...
2022-05-09 08:39:08
2677
1
翻译 【机翻】xenomai RTnet – 灵活的硬实时网络框架
文章目录RTnet – 灵活的硬实时网络框架0 摘要1 介绍2 基础服务2.1 数据包管理2.2 UDP/IP 实现2.3 Driver Layer2.4 应用程序接口2.5 捕获扩展3 实时媒体访问控制3.1 可插拔 MAC 层3.2 TDMA 学科4 实时配置服务5 火线的整合5.1 火线概述5.2 FireWire 堆栈和 RTnet 集成6 应用协议和框架6.1 netRPC——远程实时过程调用6.2 RTPS 协议6.3 实时控制框架6.4 CANopen7 总结与展望8 rtnetproxy1.
2022-04-26 21:32:53
2935
5
原创 【原创】linux实时操作系统xenomai x86平台基准测试(benchmark)
一、前言benchmark 即基准测试。通常操作系统主要服务于应用程序,其运行也是需要一定cpu资源的,一般来说操作系统提供服务一定要快,否则会影响应用程序的运行效率,尤其是实时操作系统。所以本文针对操作系统来做一些基准测试,看看在低端x86平台上,xenomai提供我们平时常用的服务所需要的时间,清楚地了解该平台上一些xenomai服务的消耗,有时能有利于我们进一步优化程序。目前大多商业实时操作系统会提供详细benchmark测试,比如VxWorks,目前xenomai没有这类的方式,所以借鉴VxWo
2022-04-21 16:37:02
3109
6
原创 【原创】xenomai+linux双内核下的时钟管理机制
clock是操作系统正常运行的发动机,系统利用时钟中断维持系统时间、促使任务调度,以保证所有进程共享CPU资源;那你是否好奇xenomai cobalt内核和Linux内核双内核共存的情况下,时间子系统是如何工作的?一个硬件时钟如何为两个操作系统提供服务的?
2022-04-05 19:59:29
1187
原创 xenomai 在X86平台下中断响应时间测试
版权声明:本文为本文为博主原创文章,转载请注明出处。如有问题,欢迎指正。博客地址:https://www.cnblogs.com/wsg1100/本文主要讲述xenomai 在X86平台上的中断响应时间测试。1.中断响应时间实时操作系统的意义就在于能够在确定的时间内处理各种突发的事件,而中断这些事件、系统抢占调度的触发点,因而衡量嵌入式实时操作系统的最主要、最具有代表性的性能指标参数无疑是中断响应时间。中断延迟时间是指从接收到中断信号到操作系统做出响应,并完成进入中断服务例程所需要的时间。中断延迟时
2021-10-10 22:16:43
1378
4
原创 X86 linux异常处理与Ipipe接管中断/异常
文章目录一、回顾二、X86 linux异常中断处理1. 中断门及IDT2. 初始化门描述符2.1 早期异常处理2.2 start_kernel中的异常向量初始化一2.3 idtentry宏(DB异常为例)2.4 start_kernel中的异常初始化二-trap_init()2.5 初始中断门描述符2.5.1 IRQ2.5.2 early_irq_init2.5.3 init_IRQ三、linux x86_64中断/异常处理总结四、ipipe接管中断处理版权声明:本文为本文为博主原创文章,转载请注明出处。
2021-06-06 22:58:55
992
原创 EtherCAT主站IgH解析(一)--主站初始化、状态机与EtherCAT报文
文章目录1 启动脚本1.1 start1.2 stop2 主站实例创建2.1 Master Phases2.2 数据报与状态机数据报状态机2.3 master状态机及数据报初始化2.4 初始化EtherCAT device2.5 设置IDLE 线程的发送间隔:2.6 初始化字符设备3 网卡4 IDLE阶段内核线程版权声明:本文为本文为博主原创文章,转载请注明出处。如有问题,欢迎指正。博客地址:https://www.cnblogs.com/wsg1100/1 启动脚本igh通过脚本来启动,可以是sys
2021-02-22 23:41:16
10719
10
转载 【转】DSP 缓存机制
本文主要以DSP讲解cache原理,但原理与CPU是相通的,故转载,原文地址:https://blog.youkuaiyun.com/qq_39376747/article/details/112794096文章目录DSP 缓存机制1.Cache基础1.1 Cache命中和缺失1.2 Cache line1.3 Cache分类1.3.1 直接映射缓存(Direct-Mapped Caches)1.3.2 组相连缓存( Set-Associative Caches)1.3.3 全相连缓存(Full associativ
2021-01-30 16:15:09
1712
UcOS-III全家桶.7z
2020-06-22
SeggerEval_WIN32_MSVC_MinGW_GUI_V538.zip
2018-04-26
SeggerEval_WIN32_MSVC_MinGW_GUI_V544
2018-04-26
周立功的smartCortex M3-1788开发板资料
2017-11-25
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人