双内核linux、实时改造linux、linux上下位机项目开发对比

http://blog.sina.com.cn/s/blog_7ff3521901015zjj.html

双内核linux的典型代表,xenomai,一个硬实时内核,

普通linux内核作为一个最低优先级区域在跑,实时的任务可以分别作为内核模块编写和在 普通linux中编写,当然必须连接xenomai本身的api才可,内核中模块基本不可以调用linux的系统调用,可以认为,做xenomai开发, 必须理解普通linux的内核开发知识,同时必须熟悉xenomai系统的api和硬件底层的开发知识,和普通linux相比,应用具有很好的硬实时性 能。双内核系统最大的问题是过于复杂,而复杂则是问题之源。

实时改造linux,是在普通linux上面带上官方rt补丁,增加普通linux的实时性,编程方法和领域知识完全同普通linux,实时任务可以完全在应用层编写,不必在内核层编写。可以达到很好的软实时,应用编程也很方便。

linux上下位机项目,linux跑非硬实时任务,下位机一般是dsp或者arm(跑裸机或者实时系统),对于复杂系统,很好的做到系统分割,便于独立演化,而且编程人员的要求不高。

对于简单实时项目,实时改造linux是很合适的,特别是实时性要求不高的时候;
对于实时要求很高的系统,如果系统不够复杂,而且有现成的xenomai移植,可以考虑使用xenomai,但是如果系统复杂度过大,则不推荐使用 xenomai,因为xenomai开发人员知识要求比较高,系统开发也是紧耦合的,如果项目规模过大,基本就是痛苦的泥潭,成本也会很高,特别是平台迁 移或者业务变化的时候;
上下位机模式无论是简单项目或者复杂项目都可以很灵活的scale,上位机可以由普通linux进化为实时改造的linux,下位机可以是裸跑的,也可以 是简单实时系统的,虽然硬件成本会稍高,但是其系统模块化比较好,符合分而治之的原则,实时任务和非实时任务很好的隔离开,对于实时任务的开发者要求很 低,无需学习复杂的linux内核开发知识,而且绝对是无可比拟的硬实时(和双内核比)。现在硬件成本基本可以忽略不计,最大的成本是复杂度、人力、漫长 的时间。

普通linux和实时改造linux值得中小公司好好学习,作为项目开发的平台,双核linux不建议公司作为平台开发,学生可以学习,我一直认为双内核 linux做产品不是很靠谱,特别是考虑到产品的长周期和应用演化的情况下面,产品开发的现在主流应该是实时改造linux以及上下位机。

猜你喜欢

转载自blog.csdn.net/sunjing_/article/details/84831696
今日推荐