Linux内核实时操作性能将大幅提高


日前,一款新的开源软件将有效地帮助Linux扩大它在工控领域的市场地位。这个名为Xenomai/SOLO的开源项目的目的是能够使得大部分的VxWorks和其他的RTOS(实时操作系统)能够在Linux内核的用户空间中模拟运行,并且能够使得内核的内建实时功能的应用程序延迟时间保持在一定的短时间内。


理论上,Xenomai/SOLO项目可以减轻那些将VxWorks和其他的RTOS应用程序移植到Linux的那些公司的负担。这种移植工作可以有效地利用目前公司的软件资源,同样可以利用Linux对现代硬件的支持、网络功能、用户接口,另外还有其他的丰富的开源软件程序的接口。

英文原文:Newly available open source software could significantly increase Linux's utility in industrial computing applications. The Xenomai/SOLO project aims to provide VxWorks and other RTOS emulation in user-space on most any Linux kernel, and to deliver short, bounded application latency on kernels with built-in real-time capabilities.

In theory, Xenomai/SOLO couldsimplify the work involved for companies porting legacy VxWorks andother RTOS applications to Linux. Such ports let companies make themost of existing software assets, while also taking advantage ofLinux's modern hardware support, networking capabilities, userinterface options, and compatibility with a vast library of open sourcesoftware.

Xenomai/SOLO evolved from Xenomai, a real-time add-on for Linux that in turn evolved from RTAI(real-time application interface). Xenomai has historically used a"co-kernel" approach in which real-time applications run on a separatekernel that "cooperates" with the Linux kernel. That approach requiresthat care be taken in configuring the Linux kernel, however, andunfortunately it currently requires avoiding certain commonconfiguration options such as CONFIG_CPU_FREQ, CONFIG_APM,CONFIG_ACPI_PROCESSOR, and a few others, according to the Xenomai FAQ.

Thenew Xenomai/SOLO add-on apparently does away with the co-kernelapproach, instead integrating Xenomai's RTOS emulation layer moretightly with the Linux kernel itself. This results in less pickinessabout kernel configuration options, while of course also resulting inan RTOS layer that is only as "real-time" as the underlying kernel.Luckily, thanks to PREEMPT_RT and other configuration options availablein recent kernels, native Linux can offer pretty good real-timeresponsiveness these days.

Code author Phillipe Gerum explains:

Someweeks ago, I started laying the groundwork for porting the Xenomaiemulators natively over the PREEMPT_RT kernel. Unlike the co-kernelbased Xenomai version, SOLO does not require any kernel support fromadditional modules or patches. It is fully based on the standard POSIXlibrary, and runs as a regular process controlled by a single imageLinux kernel.

As a first step, a VxWorks emulator has just been rebuilt over this new framework.

This framework is not another window-dressing of the existing Xenomai2.x core, but really something 100 percent redesigned and rewritten forrunning on a native real-time Linux implementation, while keeping theopportunity to adapt it back to a co-kernel system. At some point, I'dlike to make both the native and co-kernel Xenomai incarnationsconverge on the basis of this new core interface for Xenomai 3, so thatwe would be able to share the APIs between them. In short, SOLO is anecessary intermediate step on the road to Xenomai 3.

The Xenomai/SOLO project was co-sponsored by the OSADL (Open Source Automation Development Lab), which will host a conference next month, and Denx Software Engineering, an embedded Linux OS, tools, and service provider that added Xenomai support to its off-the-shelf industrial Linux distribution last year. Denx CEO Wolfgang Denkstated, "Denx Software Engineering is proud to announce Xenomai/SOLO,the new RTOS emulator that runs as a normal user-space application."

More details about the project can be found in a README, here. The code is available now for download [url=git://www.denx.de/git/xenomai-solo.git]here[/url] (GIT repository), and can also be browsed, here.

 

本文作者:
« 
» 
快速导航

Copyright © 2016 phpStudy | 豫ICP备2021030365号-3