Michael Christofferson, Director of Product Management at ENEA explores how enabling system consolidation is creating greater design freedom in multicore processors

System consolidation is emerging as a key use case for multicore technology in embedded applications. Consolidation is achieved by reducing the number of individual processors in a given system by placing several applications onto a single chip, which in the past, may have been running on different processors and different operating systems.

Developers expect this will save on device footprint, power and perhaps most importantly, bill of materials cost. But running multiple operating systems on the same multicore processor can be a complex proposition.

Enea has responded with its Hypervisor solution, which allows heterogeneous operating systems to co-exist in a straightforward fashion, taking out the complexity of configuration and software management – while speeding product development and lowering costs.

The tool implements multiple high performance computing environments on top of multicore processors, benefiting developers of next generation network equipment with lower development costs by enabling hardware consolidation, increased performance in the system with higher throughput and shorter development time.

The Hypervisor is based on OSE micro kernel technology and runs OSE RTOS applications at native processor speeds without compromising any real-time critical properties, and takes as guests Linux Operating System and optionally semiconductor specific executive environments for bare-metal speed packet processing.

This implementation is ideal for developers who want to take advantage of the proven power, speed and reliability of OSE, while also utilising the vast ecosystem of third party software available on Linux.

Communication between Linux and OSE applications is handled by Enea LINX, an OS independent, high-performance inter-process communication protocol. This enables reliable message transfer between processes in a multiprocessing environment, independent of which operating systems are used.

LINX can be used as a highly scalable and powerful IPC mechanism within an operating system, as well as between operating systems whether it is for core to core, chip to chip, board to board or even rack to rack communication.

The clusters do not require any static configuration of the system topology; hence they can easily cope with dynamic changes in the number of cores and operating systems.

Services such as IP connectivity through Ethernet port sharing, File Systems and Shell commands can be accessible from both OSE and Linux domains. To ensure system integrity, OSE and Linux applications co-exist in secure domains where common resources like memory and devices are protected. A new device driver model allows realtime, as well as guest OS applications to share devices.

The company provides out-of-the-box support for standard Kernel.org Linux, as well as commercially supported Linux distributions.

The Hypervisor implements support for loading applications and operating systems into a multicore system, starting and stopping them as required. Should an application or even the guest operating system crash then the Hypervisor will report an error containing error codes and other parameters critical for proper fault management and post mortem debug analysis.

The company’s Eclipse-based Optima development tools are available for system and application debugging. The Optima Log Analyser supports log fusion from applications and operating systems using the Hypervisor, providing a coherent system event view and analysis of the entire platform.

The solution delivers the performance and flexibility required for today’s leading edge multicore applications.