print

Embedded Linux Aligns With Multi-Core

In market segments that demand fast response, embedded Linux is often compared
to real-time operating systems (RTOS) designed specifically to control time-constrained
tasks. With multi-core technology, embedded Linux solutions can improve response time
using techniques like adding an RTOS to the system or running
time-critical tasks on dedicated CPU cores. This flexibility allows developers to
architect solutions without compromising performance or open standards.

Many embedded Linux® providers are innovating around multi-core hardware and
providing greater freedom, performance and security to developers of complex software
systems. They are expanding operating
system configuration and software partitioning options and making use of the additional
CPU cores and computing power of the latest hardware platforms. These capabilities
maintain compliance with open standards and support open source development
platforms, such as Eclipse.

Vendors Broaden OS Choice and Flexibility

There is no lack of multi-core processors serving the embedded Linux market, including
Intel (x86); IBM (Power); Freescale (PowerPC); and Cavium Networks (MIPS), just to name a
few.

Similarly, many embedded Linux providers are aligning themselves to multi-core hardware
platforms and providing new levels of software flexibility.

For example, Wind River offers multiprocessing-ready platforms based on its VxWorks
RTOS and Wind River Linux, allowing developers to take advantage of the complementary
strengths of each. The two primary multiprocessing system architectures for combining
hardware and software
are symmetric multiprocessing (SMP) and asymmetric multiprocessing (AMP).

In an SMP system, all CPU processors (or cores) are identical and share memory with
uniform access. A single SMP operating system manages all processors, interrupts and
applications.
In an AMP system, all CPU processors (or cores) can be different and typically have some
private local memory. Processors run separate, independent instances of operating systems
or software applications, which are not required to be identical.

There are five possible multiprocessing combinations using embedded Linux and an RTOS,
as shown in Figure 1. Wind River supports
four of these today, and is developing support for the fifth (VxWorks SMP). Developers
choose a multiprocessing architecture based on the workload – homogeneous or
heterogeneous – and whether it makes sense to run the application on a mix of
operating systems or processor architectures to meet design objectives. Applications with
homogeneous
workloads, like VPN (virtual private network) security appliances, typically run on an
SMP-enabled OS that assigns portions of an aggregate workload to identical CPU cores. AMP
architecture is used with heterogeneous
applications that have dissimilar workloads, like VoIP telecom equipment, which performs
various tasks like database/services and packet processing.

Developers running embedded Linux in either SMP or AMP configurations will typically
find multi-core hardware has better performance than prior single-core systems. They can
further speed up application execution by 1) assigning hard real-time priority to some
tasks and 2) parallelizing tasks so they run faster.

Dedicated CPU Cores Boost Performance

Some software vendors are addressing the real-time performance needs of software
applications by running time-critical tasks on a dedicated CPU core. Real-time tasks can
be assigned to a dedicated core, unencumbered by other system tasks that would otherwise
compete for its processor resources. This approach is used in telecommunications
applications, allowing real-time line-speed data plane and control-plane management
functions to be tightly coordinated in a single system. For example, RTLinux® from
FSMLabs® lets developers combine the performance of an embedded RTOS with the
interoperability and flexibility
of an open source Linux platform based on the 2.6 Linux kernel.

RTLinux runs standard Linux applications
and drivers unmodified in the client operating system, and POSIX (Portable Operating
System Interface) threads run in the real-time environment. This approach greatly
increases system response, demonstrating
worst case interrupt latency of less than one microsecond on a multi-core x86 platform
while both Windows-XP and Linux run full speed under load. Worst case interrupt latency on
an IBM PowerPC 440 is less than 18 microseconds under full load. This operating system is
used in a variety of applications including jet engine test stands, simulators, ship
building robots, power electronics and routers. It supports various multi-core processors
running SMP.

System Consolidation Saves Cost

Designers can exploit the virtual environment provided on RadiSys multi-core products
to consolidate computing hardware and increase performance with integrated
multi-processing. The Multi-Core Development kit provides a complete Windows development
environment with the Microware OS-9® real-time operating system, Fedora Core 5 Linux
general-purpose operating system and VirtualLogix VLX real-time virtualization software.
“It enables designers to improve performance, reduce power consumption, and consolidate
multiple single core designs,” says Wade Clowes, VP of the commercial market for
RadiSys.

This kit enables designers to create high-performance
applications that control real-world events in hard real-time for medical imaging,
industrial automation and communication applications while running general purpose Linux
applications on the same hardware. It provides multi-core operating system support
for RadiSys COM Express modules (see Figure 2) powered by the Intel® Core™ 2 Duo
processor and the OS-9 RTOS.

Software Partitioning Increases Security

Embedded Linux® providers are also applying the performance gains from multi-core
to deploy more robust virtualization solutions. They are implementing virtual machine
monitors (VMMs) that provide isolation between different operating systems and
applications running on a single platform. This isolation provides an effective layer of
security intended to keep applications from interfering with each other.

Virtualization solutions are being used in safety-critical software environments, such
as military and avionics, with rigid mandates to enforce high security across operating
systems and development tools. Software isolation is essential
to military networks that are increasingly interfaced to civilian IT infrastructure,
exposing them to program bugs, design flaws and other vulnerabilities.

One solution is LynxSecure from LynuxWorks™, which uses a VMM called a separation
kernel. It creates a layer underneath
the OS that isolates software in virtual machine-like partitions. Information flowing
between applications is carefully controlled and may be managed to various levels of
security. In Figure 3, the separation
kernel is managing two partitions, one with the LynxOS® RTOS and the other with
BlueCat® embedded Linux.

“Today, many military applications run on numerous, basically legacy systems, each of
which is dedicated to a specific security level. Separation kernels such as LynxSecure
allow these systems to be consolidated onto fewer, more powerful systems. Top-Secret,
Secret, Confidential and even unclassified applications
can now run in their own dedicated partitions on a single system, without breaching data
security or user access policies. This greatly reduces the cost of purchasing, deploying
and managing secure military systems,” says Peter Carlston, platform
solutions architect with Intel.

LynxSecure also guarantees system resources as specified by systems designers,
providing greater security and reliability for critical code. Real-time applications can
be put into secure partitions that receive a guaranteed minimum of memory and processor
execution resources, even when the system is heavily loaded. This is used to protect
mission-critical applications, which otherwise may be susceptible to denial of service
attacks or faulty subsystems that overload the CPU or exhaust memory. Since partitions are
assured a minimum amount of system resources, they are insulated from untrusted
applications or rogue attacks that could compromise the entire system.

Multi-core Innovations Likely to Drop Into Eclipse

“Eclipse gives customers access to a wide range of resources, and future multi-core
innovations are likely to drop into this open source platform,” says Rob McCammon,
director of advanced technology
planning with Wind River.

Eclipse is an open source community focused on providing a vendor-neutral open
development
platform and application frameworks for building software. This universal platform
for tools integration gives developers freedom of choice in a multi-language,
multi-platform, multi-vendor environment.

The Eclipse Integrated Development Environment (IDE) and C/C++ Development Tooling
(CDT) are two examples of tools that allow designers to have a common user interface and
bring together multiple development tools onto a single platform. This platform is widely
used by developers, which creates a large incentive for software tool vendors to be
Eclipse-compatible today and in the future.

The Eclipse Foundation is a not-for-profit corporation formed to advance the creation, evolution, promotion and support of the Eclipse Platform and to cultivate both an open source community and an ecosystem of complementary products, capabilities and services (www.eclipse.org).

Embedded Linux providers are working closely with hardware partners to deliver software
packages that increase real-time performance, software flexibility and security.
Multi-core technology is providing more architectural freedom to design complex systems
and making it practical to consider new virtualization and software partitioning
alternatives.


Craig Szydlowski is a contributing editor for Extension Media’s Embedded Intel®
Solutions and select EECatalog magazines. He is a technology writer with over twenty years
of semiconductor and embedded market experience working for Intel, IBM and Siemens. He
holds a BSEE from Yale University and a MBA from the Wharton School.

Share and Enjoy:
  • Digg
  • Sphinn
  • del.icio.us
  • Facebook
  • Mixx
  • Google

Comments

Leave a Reply

Comment

Security Code: