英文原文：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.