■出售外链〓提升排名┿【QQ:1012189958】 1号站 1号站平台 1号站娱乐 一号站平台 拉菲娱乐 拉菲2 拉菲娱乐 万达平台 万达平台 万达平台 万达平台 万达娱乐 万达娱乐 万达娱乐 东森平台 东森平台 东森平台 东森娱乐 东森娱乐 东森娱乐 杏彩平台 杏彩平台 杏彩平台 杏彩平台 杏彩娱乐 杏彩娱乐 杏彩娱乐 杏彩娱乐 杏彩娱乐 凤凰平台 凤凰平台 凤凰平台 凤凰平台 凤凰平台 凤凰娱乐 凤凰娱乐 凤凰娱乐 凤凰娱乐 凤凰娱乐 娱乐天地 娱乐天地 娱乐天地 娱乐天地 娱乐天地 娱乐天地 娱乐天地 娱乐天地 娱乐天地 娱乐天地 娱乐天地 娱乐天地 娱乐天地 世爵平台 世爵平台 世爵平台 世爵平台 翡翠平台 世爵娱乐 世爵娱乐 世爵娱乐 世爵娱乐 翡翠平台 翡翠平台 翡翠平台 翡翠娱乐 翡翠娱乐 畅博娱乐 畅博娱乐 畅博娱乐 畅博娱乐 畅博娱乐 畅博娱乐 畅博娱乐 畅博娱乐 畅博娱乐 畅博娱乐 华宇平台 华宇平台 华宇平台 华宇平台 华宇平台 华宇平台 华宇平台
当前位置:主页 > 银行专区

开源的嵌入式实时Linux: XtimesLinux

2018-01-08 10:47

Linux实时化研究是业界一个很老的话题,自从RTLinux在1999年采用独创的双内核方式实现Linux实时化以后,采用双内核方式一直是Linux实时研究的一个重要方向。在2005年左右,MontaVista公司在Linux2.6内核上使用抢占补丁的方式实现了linux的软实时,使得Linux内核的实时响应性能大为提升。目前桌面版本的Linux内核大多使用了抢占功能。

采用抢占补丁的方式比双内核方式的一个最大优点在于其编程接口的统一性。在抢占补丁方式中,实时应用与非实时使用可以使用统一的Linux API接口,他们之间的通信方式仍然采用传统的进程间通信方式即可。抢占补丁方式可以实现软实时,在硬实时方面仍然能力不足。MontaVista公司为了实现硬实时,在抢占补丁的基础上使用较为复杂的技术比如将自旋锁改成互斥量、高精度定时器、中断线程化等机制,这些机制的修改涉及到驱动程序已有的运行机理,因此会影响到Linux内核的稳定性,这对于稳定性要求高的场合,比如无线通信以及电信级应用,并不合适。经过业界测试表明,MontavistaLinux对于硬实时系统并不合适。

RTLinux引领的双内核方式通过中断虚拟化的方式能够很好地实现硬实时,虽然其需要为实时任务专门设计一套编程接口,而且实时任务与非实时任务的通信也要使用的专门通信机制,但由于其硬实时性,在一些工业控制等实时要求高地领域有重要的应用之地。在双内核方式中,实时内核接管中断,而非实时内核(即Linux)使用一个软件标志位作为其虚拟中断,虚拟中断的方式把中断控制器完全交给了实时内核,因而能达到很好地实时响应性能。双内核方式除了编程接口的不统一之外,也还有其他不足之处,比如实时内核没有自己的内存管理功能,在内存的分配仍然依赖于Linux; 实时内核虽然接管了中断,但中断的现场仍然是Linux来保存和恢复的。可以说实时内核和非实时内核是紧密耦合的,这对于系统的维护以及稳定性非常不利。

   RTLinux在07年被WindRiver收购后,在开源社区就变得不活跃了。不过RTLinux的变种RTAI仍然活跃于开源社区。RTAI是完全免费,开放的,不受RTLinux专利的限制。RTAI代表“Real-Time Application Interface”,它必须与Adeos补丁一起工作。Adeos实现了一个硬件抽象层,其最重要的功能仍然是中断虚拟化,不过它比RTlinux时代的中断虚拟化功能更加完善。硬件抽象层的存在以及其功能完善,使得实时内核和非实时内核之间由紧耦合关系变为松耦合关系,这对于系统的稳定性以及代码维护是非常重要的。硬件抽象层使得Linux所需的物理资源或者从硬件抽象层获得,或者直接访问硬件(针对于Linux专属设备),套用虚拟化术语,Linux已作为实时内核的客户操作系统被调度运行。

      RTAI/ADEOS 将Linux作为客户操作系统运行于实时内核之上的方式实际上是嵌入式虚拟化的内容。嵌入式虚拟化(embedded virtualization,又名Hypervisor)是最近几年热门的研究内容,它是为了弥补传统操作系统在实时性、安全性、多核扩展方面的不足而提出的。针对系统实时性的Hypervisor的方案目前主要有WindRiver hypervisor,OKL4,Lynx OS,Xenomai等。嵌入式虚拟化代表了解决Linux实时问题的目前最为先进的方法,但目前正处于推广阶段,开源的方案也比较少,上述方案中只有Xenomai是开源的,但Xenomai一般这针对某个芯片平台提供一个参考的源代码版本,如果要应用到具体平台中,还需要深入的源代码阅读才能完成移植工作,这对于一些设备厂商而言,无疑是一项高的门槛。

      针对Xeonmai在平台支持方面的欠缺,笔者所在团队用了近2年半时间开发了XtimesLinux,专门针对ARM平台,而且针对特定开发板提供板级的实时方案,降低使用门槛,而且代码完全开放,希望能被工业控制,信号处理、通信等领域试用,以图在国外厂商所占据的实时基础软件市场中取得立足之地。

一、XtimesLinux的介绍

XtimesLinux是面向嵌入式领域的实时基础软件环境,它由微内核虚拟机Xtimes和Linux操作系统组成。Xtimes采用微内核架构,支持实时进程调度,同时将Linux作为一个超级进程进行调度,目的是利用Linux作为服务进程,提供文件系统、网络等服务。

Xtimes为自主设计,在设计时参考业界流行的各种实时微内核结构,同时对其进行扩展,使之能支持操作系统的虚拟化,能调度操作系统作为一个进程运行。所支持的虚拟化方式为半虚拟化,即要求修改操作系统的源代码,对其重新编译。这种方式在性能上损失更小,更适合嵌入式环境。Xtimes目前版本号为1.0, 现在所能支持的客户操作系统为Linux,所支持的Linux内核版本为2.4以及2.6.28,2.6.29, 2.6.32内核等。

       Xtimes的网站为: 

1.1  XtimesLinux的目的




上一篇:核战争爆发 4X HD/S3/One X/四核MX对比

下一篇:范冰冰《X战警》仅一句台词 被讽“配角扮主角“