随笔分类 -  xenomai3

xenomai 一种Linux实时化解决方案
摘要:【原创】xenomai内核解析-xenomai实时线程创建流程本文介绍了linux硬实时操作系统xenomai pthread_creta()接口的底层实现原理,解释了如何在双内核间创建和调度一个xenomai任务。本文是基于源代码的分析,提供了详细的流程和注释,同时给出了结论部分,方便读者快速了解核心内容。 阅读全文
posted @ 2023-07-02 17:57 沐多 阅读(939) 评论(0) 推荐(1) 编辑
摘要:xenomai3协议栈RTnet支持TCP、UDP,但不支持IGMP; 对ARP支持有限制:地址解析的延迟会影响数据包传输延迟,RTnet为实时性考虑,路由表设计静态的,只在设置期间配置,或者接收到其他机器A发出的的ARP请求才会将A的路由信息添加到路由表。如果我们访问的IP是未知目标MAC地址,不 阅读全文
posted @ 2023-05-16 18:48 沐多 阅读(351) 评论(0) 推荐(1) 编辑
摘要:【原创】linux实时应用如何printf输出不影响实时性?本文介绍为什么linux实时任务不能直接调用printf,首先简单介绍一下printf终端输出原理,然后就如何实现终端输出不影响实时任务实时性问题给出一个方案,最后介绍xenomai中是如何做到完美`printf()`的。 阅读全文
posted @ 2023-01-16 00:57 沐多 阅读(1777) 评论(1) 推荐(4) 编辑
摘要:【原创】xenomai UDD介绍与UDD用户态驱动示例本文介绍linux实时操作系统xenomai UDD原理和相关代码,并给出一个基于UDD的用户态操作GPIO的示例,以及xenomai RTNet协议栈收发网络包与UDD用户态驱动操作网卡收发包的CPU耗时对比。 阅读全文
posted @ 2022-08-21 22:25 沐多 阅读(774) 评论(10) 推荐(2) 编辑
摘要:【机翻】RTnet – 灵活的硬实时网络框架本文介绍了开源项目 RTnet。RTnet 为以太网和其他传输媒体上的硬实时通信提供了一个可定制和可扩展的框架。 本文描述了 RTnet 的架构、核心组件和协议。 阅读全文
posted @ 2022-04-26 21:30 沐多 阅读(1653) 评论(0) 推荐(1) 编辑
摘要:【原创】xenomai+linux双内核下的时钟管理机制clock是操作系统正常运行的发动机,系统利用时钟中断维持系统时间、促使任务调度,以保证所有进程共享CPU资源;可以说,“时钟中断”是整个操作系统的脉搏。那你是否好奇xenomai cobalt内核和Linux内核双内核共存的情况下,时间子系统是如何工作的?一个硬件时钟如何为两个操作系统提供服务的?本文将揭开xenomai双核系统时间机制的面纱。 阅读全文
posted @ 2022-04-05 19:49 沐多 阅读(1738) 评论(0) 推荐(1) 编辑
摘要:【原创】xenomai 在X86平台下中断响应时间测试实时操作系统的意义就在于能够在确定的时间内处理各种突发的事件,而中断是这些事件、系统抢占调度的触发点,中断何时得到处理反应了系统的基本实时性能,因而衡量嵌入式实时操作系统的最主要、最具有代表性的性能指标参数无疑是中断响应时间,本文测试实时linux xenomai在x86平台上的中断响应时间。 阅读全文
posted @ 2021-10-10 22:12 沐多 阅读(2004) 评论(2) 推荐(1) 编辑
摘要:Ipipe是linux与xenomai双核结构下保证xenomai内核实时性的基础,本文以X86为例介绍ipipe是如何接管中断的。 阅读全文
posted @ 2021-06-06 22:54 沐多 阅读(1799) 评论(0) 推荐(2) 编辑
摘要:ARM平台下内存和cache对xenomai实时性的影响。 阅读全文
posted @ 2020-11-07 12:01 沐多 阅读(1643) 评论(0) 推荐(2) 编辑
摘要:xenomai3内核解析 本博客为本人学习linux实时操作系统框架xenomai的一些记录,主要剖析xenomai内核实现,以及与linux相关的知识。为方便读者定位具体文章,现列出本博客大纲,后续会陆续将大纲中缺少部分填充完整,感兴趣的读者敬请关注! 版权声明:本文为本文为博主原创文章,转载请注 阅读全文
posted @ 2020-10-18 18:39 沐多 阅读(5483) 评论(4) 推荐(6) 编辑
摘要:【原创】xenomai内核解析--xenomai与普通linux进程之间通讯XDDP(三)--实时与非实时数据交互本文介绍了Xenomai中的XDDP(Xenomai Distributed Data Protocol)通信机制,XDDP用于实时和非实时进程之间的数据交换。XDDP在Xenomai内核中涉及的数据结构和管理方式,以及创建XDDP通道后的实时端和非实时端连接过程。 阅读全文
posted @ 2020-10-17 21:43 沐多 阅读(1277) 评论(0) 推荐(0) 编辑
摘要:版权声明:本文为本文为博主原创文章,转载请注明出处。如有问题,欢迎指正。博客地址:https://www.cnblogs.com/wsg1100/ 1.概述 上篇文章介绍了实时端socket创建和配置的流程,本篇文章来看bind操作,实时端与非实时端是如何关联起来的? XDDP通讯的底层设备为xnp 阅读全文
posted @ 2020-10-08 20:58 沐多 阅读(1219) 评论(0) 推荐(0) 编辑
摘要:版权声明:本文为本文为博主原创文章,转载请注明出处。如有问题,欢迎指正。博客地址:https://www.cnblogs.com/wsg1100/ 1.概述 上篇文章xenomai内核解析--实时IPC概述中介绍了RTIPC,从这篇文章开始开始深入xenomai内核,解析RTIPC的具体实现。 XD 阅读全文
posted @ 2020-10-01 18:59 沐多 阅读(2552) 评论(0) 推荐(0) 编辑
摘要:Linux系统中常见的进程间通讯方式有管道、FIFO、共享内存、信号、套接字等方式。但在xenomai内核加入后,一个实时任务与非实时(普通Linux任务,如人机交互应用)之间该如何通讯? 阅读全文
posted @ 2020-10-01 17:01 沐多 阅读(2545) 评论(1) 推荐(0) 编辑
摘要:版权声明:本文为本文为博主原创文章,转载请注明出处。如有问题,欢迎指正。博客地址:https://www.cnblogs.com/wsg1100/ 一、问题起源 何为漂移?举个例子两颗32.768kHz晶振$C_1$和$C_2$,由于制造工艺原因或者使用时温度、辅助元件参数等影响,与他们的实际频率一 阅读全文
posted @ 2020-09-13 18:18 沐多 阅读(1880) 评论(9) 推荐(3) 编辑
摘要:版权声明:本文为本文为博主原创文章,转载请注明出处。如有问题,欢迎指正。博客地址:https://www.cnblogs.com/wsg1100/ 可能大部分人一直好奇VxWorks与xenomai对比,实时性孰优孰劣,正好笔者最近要做一个这方面的对比。声明:下面数据,仅供个人参考,有不对的地方还请 阅读全文
posted @ 2020-08-01 17:37 沐多 阅读(2090) 评论(1) 推荐(2) 编辑
摘要:1. 概述 上篇文章xenomai内核解析--同步互斥机制(一)--优先级倒置讲到,对于所有内核对象: xnregistry:保存内核对象,提供内核对象存储和快速检索。 xnsynch:资源抽象,提供线程与资源的同步互斥管理机制。 举个应用例子,有两个xenoami任务,使用semaphore做互斥 阅读全文
posted @ 2020-07-22 23:53 沐多 阅读(897) 评论(0) 推荐(2) 编辑
摘要:版权声明:本文为本文为博主原创文章,转载请注明出处。如有错误,欢迎指正。 @ 一、添加系统调用 下面给xenomai添加一个系统调用get_timer_hits(),用于获取应用程序运行CPU的定时器中断产生的次数,类似于VxWorks里的tickGet()。需要说明一下VxWorks是采用周期ti 阅读全文
posted @ 2020-07-19 09:49 沐多 阅读(1020) 评论(0) 推荐(2) 编辑
摘要:版权声明:本文为本文为博主原创文章,转载请注明出处。如有错误,欢迎指正。 1. 引出问题 上一篇文章xenomai内核解析--双核系统调用(一)以X86处理器为例,分析了xenomai内核调用的流程,读了以后可能会觉得缺了点什么,你可能会有以下疑问: 系统中的两个内核都是POSIX接口实现系统调用, 阅读全文
posted @ 2020-07-18 23:09 沐多 阅读(1869) 评论(0) 推荐(0) 编辑