随笔分类 - xenomai3
xenomai 一种Linux实时化解决方案
摘要:
Xenomai是一个基于linux的硬实时操作系统(RTOS),在标准linux基础上添加一个实时内核Cobalt,与linux内核在内核空间共存,为了使Xenomai能够保持可预测的延迟(硬实时),必须阻止Linux内核直接处理中断,必须将中断先重定向通过Xenomai Cobalt处理,然后才是Linux内核。为此在底层增加一个微内核来实现。微内核充当虚拟可编程中断控制器,分离Linux和Xenomai Cobalt之间的中断掩码,该微内核称为中断管道(I-Pipe),I-Pipe基于ADEOS(Adaptive Domain Environment for Operating Systems)微内核,但是I-pipe更精简,并且只处理中断。
阅读全文

摘要:
本文将带您深入了解一个与之相关的真实事故现场及其问题定位过程,波折重重,其中的xenomai问题定位思路具有一定借鉴意义,希望对你定位xenomai问题有所帮助。
阅读全文

摘要:
本文简要记录在瑞芯微RK3588(ARM64)构建安装实时linux操作系统xenomai4的过程,以及实时性测试,希望对你有所帮助!
阅读全文

摘要:
本文介绍linux实时操作系统xenomai中的watchdog机制及用途。
阅读全文

摘要:
精确定时是实时应用常用的操作之一,比如工业以太网(ECAT、PN...)中的通信周期,通信周期的准确控制离不开精确定时。本文首先简要概述POSIX标准,随后深入剖析POSIX定时接口在常用开放内核源码的RTOS(实时操作系统)上的上的实现原理做简单介绍。通过本文的介绍,希望能为读者在实际应用中提供有价值的参考,避免在RTOS中使用POSIX遇到不必要的困扰。
阅读全文

摘要:
本文介绍了linux硬实时操作系统xenomai pthread_creta()接口的底层实现原理,解释了如何在双内核间创建和调度一个xenomai任务。本文是基于源代码的分析,提供了详细的流程和注释,同时给出了结论部分,方便读者快速了解核心内容。
阅读全文

摘要:一、RTnet注意事项 xenomai3协议栈RTnet支持TCP、UDP,但不支持IGMP; 对ARP支持有限制:地址解析的延迟会影响数据包传输延迟,RTnet为实时性考虑,路由表设计静态的,只在设置期间配置,或者接收到其他机器A发出的的ARP请求才会将A的路由信息添加到路由表。如果我们访问的IP
阅读全文
摘要:
本文介绍为什么linux实时任务不能直接调用printf,首先简单介绍一下printf终端输出原理,然后就如何实现终端输出不影响实时任务实时性问题给出一个方案,最后介绍xenomai中是如何做到完美`printf()`的。
阅读全文

摘要:
本文介绍linux实时操作系统xenomai UDD原理和相关代码,并给出一个基于UDD的用户态操作GPIO的示例,以及xenomai RTNet协议栈收发网络包与UDD用户态驱动操作网卡收发包的CPU耗时对比。
阅读全文

摘要:
本文介绍了开源项目 RTnet。RTnet 为以太网和其他传输媒体上的硬实时通信提供了一个可定制和可扩展的框架。 本文描述了 RTnet 的架构、核心组件和协议。
阅读全文

摘要:
clock是操作系统正常运行的发动机,系统利用时钟中断维持系统时间、促使任务调度,以保证所有进程共享CPU资源;可以说,“时钟中断”是整个操作系统的脉搏。那你是否好奇xenomai cobalt内核和Linux内核双内核共存的情况下,时间子系统是如何工作的?一个硬件时钟如何为两个操作系统提供服务的?本文将揭开xenomai双核系统时间机制的面纱。
阅读全文

摘要:
实时操作系统的意义就在于能够在确定的时间内处理各种突发的事件,而中断是这些事件、系统抢占调度的触发点,中断何时得到处理反应了系统的基本实时性能,因而衡量嵌入式实时操作系统的最主要、最具有代表性的性能指标参数无疑是中断响应时间,本文测试实时linux xenomai在x86平台上的中断响应时间。
阅读全文

摘要:
Ipipe是linux与xenomai双核结构下保证xenomai内核实时性的基础,本文以X86为例介绍ipipe是如何接管中断的。
阅读全文

摘要:
ARM平台下内存和cache对xenomai实时性的影响。
阅读全文

摘要:本文是关于Xenomai实时操作系统的基准测试,旨在评估其在低端x86平台上的性能。测试模仿了VxWorks的方法,关注CPU结构、指令集等因素对系统服务耗时的影响。测试项目包括信号量、互斥量、消息队列、任务切换等,通过比较操作前后的时戳来测量耗时,并排除中断和上下文切换的干扰。测试结果显示了各项操作的最小、平均和最大耗时,为程序优化提供参考。注意,所有数据基于特定硬件环境,测试用例使用Alchemy API编写。
阅读全文
摘要:xenomai3内核解析 本博客为本人学习linux实时操作系统框架xenomai的一些记录,主要剖析xenomai内核实现,以及与linux相关的知识。为方便读者定位具体文章,现列出本博客大纲,后续会陆续将大纲中缺少部分填充完整,感兴趣的读者敬请关注! 版权声明:本文为本文为博主原创文章,转载请注
阅读全文
摘要:
本文介绍了Xenomai中的XDDP(Xenomai Distributed Data Protocol)通信机制,XDDP用于实时和非实时进程之间的数据交换。XDDP在Xenomai内核中涉及的数据结构和管理方式,以及创建XDDP通道后的实时端和非实时端连接过程。
阅读全文

摘要:版权声明:本文为本文为博主原创文章,转载请注明出处。如有问题,欢迎指正。博客地址:https://www.cnblogs.com/wsg1100/ 1.概述 上篇文章介绍了实时端socket创建和配置的流程,本篇文章来看bind操作,实时端与非实时端是如何关联起来的? XDDP通讯的底层设备为xnp
阅读全文
摘要:版权声明:本文为本文为博主原创文章,转载请注明出处。如有问题,欢迎指正。博客地址:https://www.cnblogs.com/wsg1100/ 1.概述 上篇文章xenomai内核解析--实时IPC概述中介绍了RTIPC,从这篇文章开始开始深入xenomai内核,解析RTIPC的具体实现。 XD
阅读全文
摘要:
Linux系统中常见的进程间通讯方式有管道、FIFO、共享内存、信号、套接字等方式。但在xenomai内核加入后,一个实时任务与非实时(普通Linux任务,如人机交互应用)之间该如何通讯?
阅读全文
