了解Linux实时内核
了解Xenomai过程中,对现阶段的RTOS进行总结如下:
把现阶段的RTOS分成两个阵营:
非Linux阵营:VxWorks,RTEMS
Linux阵营 :RT-linux,Preempt-rt,WindRiver Linux,RTAI,Xenomai。
下面重点介绍Linux阵营。
RT-linux:应该是第一批实时性linux,可以提供硬实时,有两个版本,免费版和收费版,收费版最初由 FSMLabs(Finite State Machine Labs)公司开发,在2007年卖给了 WindRiver。之后 WindRiver 将其作为自己的产品 WindRiver Linux 的一个实时核心(real-time core)象征性的维护了一段时间,与2011年8月彻底停止更新和维护。RT-linux 的性能应该很好,WindRiver 应该是出于竞争的目的对其进行了收购,现在 RT-linux 已经不再更新,因此对于我们也只能当做了解一段历史了。
WindRiver Linux:WindRiver 为 Linux 世界提供的一个发行版,具备软实时的能力,应该吸收了一部分 RT-Linux 的核心技术,感觉是 WindRiver 为了延长其产品线,提高行业竞争力和覆盖面而开发的系统,还没进行深入分析,毕竟是软实时。
Preempt-rt:Ingo Molnar 引领的 Linux kernel 实时 patch,可以改善通用 Linux 的实时性,也是本项目前期工作的重点。
RTAI:项目应该继承自 RT-linux,后期吸收了 Xenomai 的一部分思想,专注实时性能,应用广泛。
Xenomai:2001 年 8 月由 Philippe Gerum 发起,其思想是来源于 Karim 的 ADEOS(Adoptive Domain Environment for Operating System)。发布后即被 RTAI 采用,并一度合并为 RTAI/Fusion。后于2005年独立。Xenomai 的实时性能比RTAI略差,因为其完全由 ADEOS 控制中断,而 RTAI 是由其内核对中断进行了截断,非实时的中断才交给 ADEOS,这就减少了一部分实时开销。
了解Linux实时内核的更多相关文章
- 树莓派Raspiberry 编译Linux实时内核PREEMPT-RT 实战
树莓派4B 实时内核(Preempt_RT)的配置和编译https://blog.csdn.net/zlp_zky/article/details/114994444 基本按照这个blog来操作. 几 ...
- linux 实时时钟(RTC)驱动【转】
转自:http://blog.csdn.net/yaozhenguo2006/article/details/6820218 这个是linux内核文档关于rtc实时时钟部分的说明,此文档主要描述了rt ...
- Linux 实时性能测试工具——Cyclictest
Cyclictest 是 rt-tests 下的一个测试工具,也是rt-tests 下使用最广泛的测试工具,一般主要用来测试使用内核的延迟,从而判断内核的实时性. 1.2 cyclictest 安装 ...
- linux 参数内核
优化Linux内核参数 转自:http://www.centoscn.com/CentOS/config/2013/0804/992.html vim /etc/sysctl.conf 1.net ...
- 【原创】xenomai3.1+linux构建linux实时操作系统-基于X86_64和arm
版权声明:本文为本文为博主原创文章,转载请注明出处.如有问题,欢迎指正.博客地址:https://www.cnblogs.com/wsg1100/ 目录 一.概要 二.环境准备 1.1 安装内核编译工 ...
- 深入linux kernel内核配置选项
============================================================================== 深入linux kernel内核配置选项 ...
- 只有文本编辑器才是王道, 什么ide都是evil的浮云, 看看linus linux的内核开发工具vim emacs
只有文本编辑器才是王道, 什么ide都是evil的浮云, 看看linus linux的内核开发工具vim emacs [ide is evil] (http://i.cnblogs.com/EditP ...
- linux查看内核版本、系统版本、系统位数(32or64)
linux查看内核版本.系统版本.系统位数(32or64) 2011-05-01 22:05:12 标签:linux 内核版本 休闲 系统版本 系统位数 1. 查看内核版本命令: 1) [root@ ...
- Linux Bluetooth内核分析
目录 1. 初始化 2. hci部分 Linux提供了对Bluetooth的支持,核心代码位于net/bluetooth 1. 初始化 主要由subsys_initcall调用函数bt_init()来 ...
随机推荐
- HDU 1863 畅通工程 -Kruskal模版
畅通工程 Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submis ...
- BAT脚本编写教程入门提高篇
BAT脚本编写教程入门提高篇 批处理文件的参数 批处理文件还可以像C语言的函数一样使用参数(相当于DOS命令的命令行参数),这需要用到一个参数表示符“%”. %[1-9]表示参数,参数是指在运行批处理 ...
- 汕头市队赛 SRM13 T3
这道题可以贪心 维护一个答案队列 枚举位置 每次将比当前位置大的队尾全部替代掉 记录删了多少了就好了 #include<cstdio> #include<iostream> # ...
- Linux内核情景分析之异常访问,用户堆栈的扩展
情景假设: 在堆内存中申请了一块内存,然后释放掉该内存,然后再去访问这块内存.也就是所说的野指针访问. 当cpu产生页面错误时,会把失败的线性地址放在cr2寄存器.线性地址缺页异常的4种情况 1.如果 ...
- linux知识点小结
PATH环境变量,记录了所有可以直接执行的二进制命令的原件或者链接 harvey@ubuntu:/etc$ echo $PATH /usr/lib/lightdm/lightdm:/usr/local ...
- Centos7下zabbix部署(五)定义报警媒介-微信
1.注册微信 注册过程参考地址:https://www.cnblogs.com/hanyifeng/p/5368102.html 主要需要以下一些信息 CorpID : wwxxxxxxxxx ...
- PHP获取IP的方法
function getIP() { if (isset($_SERVER['HTTP_X_FORWARDED_FOR'])) { $realip = $_SERVER['HTTP_X_FORWARD ...
- PHP获取不带后缀的文件名方法
$filename = "test.txt"; $houzhui = substr(strrchr($filename, '.'), 1); $result = basename( ...
- [BZOJ1032][JSOI2007]祖码Zuma 区间dp
1032: [JSOI2007]祖码Zuma Time Limit: 10 Sec Memory Limit: 162 MB Submit: 1105 Solved: 576 [Submit][S ...
- Knockout 双向绑定的理解
今天做了个需求就是上传图片,然后在代码中通过jQuery给一个标签赋值,经过前台的debug,发现这个值赋值成功了,但是提交到后台的请求里就没了,然后经历了一顿度娘,结果中发现了问题. 既然knock ...