Global Sources
EE Times-Asia
Stay in touch with EE Times Asia
EE Times-Asia > EDA/IP

What you need to know when choosing virtualization solution

Posted: 26 Mar 2010 ?? ?Print Version ?Bookmark and Share

Keywords:virtualization? embedded design? multicore? software? hardware?

Many embedded system designers are considering adopting virtualization technology in their applications for cost savings, isolation and footprint reduction benefits.

Choosing a virtualization solution, however, can be intimidating. Given the variety of architectures and products available, just knowing the right questions to ask can require that the embedded designer have an in-depth knowledge of CPU features, multicore architectures, privilege levels, virtualization techniques and more.

This article attempts to ease the process by posing 10 important questions that any embedded engineer or manager considering should weigh carefully.

Before diving into these questions, it is helpful to have a basic understanding of what virtualization technology is and how it can be advantageous for some embedded designs. In short, virtualization is a technology that enables running more than one OS a computer simultaneously. The key piece of system software that accomplishes this goal is a hypervisor (equivalently known as a virtual machine monitor, or VMM)

Hypervisor software can make possible designs that include real-time processing, a user interface and more on a single computer. This means not only that more can be accomplished with just one set of computing hardware, but also that complex systems requiring multiple sets of processing hardware can be built in less space and with less hardware cost than would be possible with traditional solutions.

While at first glance those benefits can sound like an engineer's dream, as with any technology there are important trade-offs that must be considered before adopting a hypervisor.

Furthermore, each hypervisor solution may use a different software architecture and incorporate different features that present unique caveats to the embedded designer.

The following are must-ask questions to help you navigate the maze of virtualization solutions and ultimately make an informed decision.

1. Do you need a hosted or bare-metal hypervisor?
There are two broad categories of hypervisors on the market.

Hosted hypervisors work by running one or more OS instances in containers called virtual machines (VMs) on top of a "host" operating system, typically a general-purpose OS such as Windows. Bare-metal hypervisor software, in contrast, runs multiple VMs in parallel with no host OS, such that the hypervisor itself has direct control over communication with low-level system hardware.

Although the difference between hosted and bare-metal hypervisors can sound subtle, in reality there are major implications to choosing one over the other.

Virtualization lets multiple OS run simultaneously, but picking the right enabling software is no easy task

Click on image to enlarge.

Most embedded applications benefit from a bare-metal architecture, since such hypervisors can support real- time OS and enable direct guest OS access to a wide variety of hardware (features not typically supported by hosted solutions).

Still, some engineering tasks, such as testing unreleased software or running applications written for different OS, are better accomplished using a hosted hypervisor, which is typically easier to install and configure.

1???2???3?Next Page?Last Page

Article Comments - What you need to know when choosing ...
*? You can enter [0] more charecters.
*Verify code:


Visit Asia Webinars to learn about the latest in technology and get practical design tips.

Back to Top